Rovers were poor before the break and fortunate to go in only one down as a result of Chuks Aneke's third minute strike.
But they rallied in the second half as John Marquis claimed his seventh goal of the season and Matty Blair came off the bench to claim what had previously looked like an unlikely win.
Goalkeeper Ian Lawlor was a clear man of the match for a string of fine saves to frustrate the Dons, while substitute Alfie Beestin set up both goals.
Darren Ferguson, angered by the midweek 3-0 defeat at Wigan, freshened up the personnel and went back to 4-4-2. Niall Mason and Tyler Garratt were recalled in the full back positions, while Ben Whiteman returned to a diamond midfield. Matty Blair, Harry Toffolo and Mathieu Baudry made way.
Despite the changes Rovers were distinctly second best during the first half and were caught cold after just three minutes when Rodney Kongolo failed to clear a routine cross from the right and Aneke finished with aplomb from just outside the area.
The below par hosts had Lawlor to thank for keeping them in the game. He parried Ed Upson's free kick before twice blocking efforts from Aneke as the visitors laid siege.
One of those saves rebounded to Peter Pawlett whose goalbound effort was blocked by Garratt, while Alex Gilbey also went close with a good hit from 18 yards.
Rovers struggled to create anything of note and were perhaps fortunate not to fall further behind on 25 minutes when Aneke had the ball in the net but the officials ruled the ball had gone out for a goal kick.
Alfie Beestin replaced Kongolo at the start of the second period in an attempt to support a somewhat isolated Marquis - and the change quickly paid off.
Marquis saw a decent effort deflected wide after good build-up and from the resultant corner Rovers were level. James Coppinger's delivery from the right was headed back towards goal by Beestin and the loose ball appeared to be bundled home by a combination of Marquis and an MK defender.
Aneke and Kieran Agard flashed shots wide for the Dons but much-improved Rovers were now imposing themselves much more on the opposition and Whiteman's snapshot tested Lee Nicholls' handling.
Lawlor again came to the rescue midway through the second half with a superb reaction save to keep out Agard's header.
Blair had replaced Jordan Houghton in an attacking move and within minutes the substitute was on the scoresheet. Rovers played their way into the box and Beestin teed up Blair to finish expertly - earning Rovers a much-needed three points and leaving MK to reflect on a game they let slip from their grasp.
Rovers: Lawlor, Mason, Wright, Butler, Garratt, Houghton (Blair 64), Whiteman (Baudry 90), Kongolo (Beestin 46), Rowe, Coppinger, Marquis. Subs not used: Marosi, Mandeville, Ben Khemis, Toffolo.
MK Dons: Nicholls, Williams, Wootton, Ebanks-Landell, Golbourne, Gilbey, McGrandles (Nesbitt 79), Upson (Seager 73), Pawlett, Aneke, Agard (Thomas-Asante 73). Subs not used: Walsh, Aribiyi, Sietsma, Brittain.
Referee: Eddie Ilderton (Tyne & Wear)