McKegg tied the game 1-1 in the second period and then got the insurance marker in the third as the Marlies won their third consecutive game and earned a split against the Barons in the season series with one win apiece.
Jamie Devane and Brandon Kozun had the other goals for Toronto (31-17-4). Anton Lander had the lone Oklahoma City goal.
With the loss, the Barons (23-24-7) dropped two of three in a three-game, three-night stretch over the weekend. But Oklahoma City still has points in seven of nine games during the month of February.
The Barons won the only other meeting of the season between the two clubs 5-3 Jan. 30 in Oklahoma City.
Richard Bachman made 27 saves for his 14th loss of the season.
Garret Sparks, making his first start since Jan. 31, made 38 saves for the win and improved to 2-2-0 at Ricoh Coliseum this season.
The Marlies scored twice in a sixty-eight second span of the second period to erase an early 1-0 deficit.
Oklahoma City opened scoring on a second-period, five-on-three power play as Lander’s pass re-directed off Korbinian Holzer and past Sparks at 3:48.
McKegg tied it 1-1 at 8:34, taking a Stuart Percy feed and one timing it over the glove hand of Bachman for his 12th of the season.
Just over a minute later, Devane slapped a loose puck past a screened Bachman for his third of the season giving Toronto its first lead, 2-1.
McKegg’s second of the night at 9:42 gave the Marlies a 3-1 lead. McKegg picked up a pass from Kenny Ryan and beat Bachmond blocker-side for his 13th of the season on a power play.
Kozun made it 4-1 on a power play at 17:10, re-directing a T.J. Brennan shot past Bachman.
Toronto had an excellent chance to open scoring at 12:15 of the first period as Josh Leivo re-directed a Ryan feed past Bachman but hit a post.
Late in the period, Peter Holland even got a shot through Bachman's pads but Barons’ defenceman David Musil was there to clear the rolling puck before it crossed the goal line. With a minute remaining Mark Acrobello also beat Sparks glove-side but rang his shot off a post.
Holland was playing his first game with the Marlies since being re-assigned on Saturday. In three games with the Marlies this season, Holland has three goals.