Tampa Bay's Chad Orvella (0-2) pitched a scoreless eighth but left after walking Tadahito Iguchi and Jim Thome to start the ninth. Brian Stokes came in and struck out Jermaine Dye, but A.J. Pierzynski singled to right to load the bases.
Crede then drove in Iguchi with a fly to left on the first pitch, giving the White Sox their eighth win in their final at-bat this season.
It also made a winner of Bobby Jenks (2-1), who pitched a perfect ninth, and sent Tampa Bay to its sixth loss in seven games.
Luis Terrero gave Chicago a 3-1 lead in the fourth with a long homer to left, and Tadahito Iguchi added an RBI single in the sixth. But it crumbled in the seventh, when Tampa Bay's Elijah Burks hit a three-run homer off Mark Buehrle.
Jorge Cantu led off with a single and Buehrle hit Brendan Harris with two out. That drew a warning from plate umpire Jim Reynolds and a visit from manager Ozzie Guillen. It also set the stage for Dukes, who missed two games amid allegations by his estranged wife that he threatened to kill her and their two young children.
Dukes tied it at 4 when he sent a 1-0 pitch out to left for his ninth homer.
Buehrle retired the next batter, B.J. Upton, on a grounder, but got a no-decision in his fifth attempt at his 100th victory. He allowed four runs and eight hits while walking one and striking out four in his first start since he criticized Pierzynski for showing disrespect to backup catcher Toby Hall.
That stemmed from Pierzynski telling a radio host he was disappointed he wasn't in the lineup for the series opener last Friday against the crosstown rival Cubs, which spurred a profane on-air tirade by manager Ozzie Guillen.
Buehrle was in line for the win after Terrero sent a shot that fell just a few rows shy of the left-field concourse, an estimated 442 feet away, for his second homer.
Terrero scored from second after being hit by a pitch in the seventh, when Iguchi broke an 0-for-21 skid with a single to center off Devil Rays starter James Shields.
Shields allowed 10 hits, walked three and struck out two while hitting two batters and throwing two wild pitches.
The Devil Rays wasted an opportunity in the eighth, when Carl Crawford committed his second baserunning blunder of the game.
He led off with a single -- his third hit -- off pitcher Mike MacDougal's glove. But after MacDougal intentionally walked Delmon Young with one out, Matt Thornton came in and caught Crawford trying to steal third before striking out pinch hitter Greg Norton. Crawford was caught in an inning-ending rundown trying to score in the fourth.
Dukes made a mistake in the third, when he stayed in the box rather than run out a dribbler in front of the plate, but he made up for it later.
Manager Joe Maddon said he lost sleep over the decision but put Dukes back into the lineup because "I felt it was time to move things along."
Dye and Darin Erstad had two hits apiece for Chicago and extended their streaks to 12 and 11 games, respectively. Pierzynski and Crede also had two hits.
Erstad started at first base for Paul Konerko, who had a death in the family. Guillen expects Konerko to play Saturday. ... Crede started after missing three games with a sore back. ... The Devil Rays hope to activate 3B Akinori Iwamura (right oblique strain) from the 15-day disabled list in time for Monday's game against Detroit.