A Jordi Gomez double helped Rovers to all three points in a topsy-turvy encounter at Ewood Park.
After the Spaniard had headed Rovers back on level terms early in the second half, he then scored a fantastic free-kick deep in added time to win the match.
It had started badly for Rovers in a lacklustre first half, Samir Carruthers giving the Dons the lead with a shot from the edge of the box.
Rovers soon levelled after the turnaround, before Elliott Bennett grabbed his first goal for the club on 71 minutes. However the visitors hit back through Alex Revell to make it 2-2 with four minutes left.
But with it looking like Rovers had thrown away a chance of victory, up stepped Gomez to clinch it for the home side.
Rovers made just the one change from the side that faced Derby on Wednesday night as Chris Brown replaced Matt Grimes, and it was the forward who had the first opportunity at Ewood.
As Jordi Gomez lifted the ball over the Dons backline the Brown ran onto the ball, but his strike on the half-volley flashed wide.
But after controlling the first 20 minutes without ever really threatening, Rovers allowed the visitors to gain a foothold in the game as they grew in confidence.
Only a super save from Jason Steele prevented Karl Robinson's side from opening the scoring on 25. Jake Forster-Caskey with a 20-yard free-kick that was arrowing towards the top corner until the keeper's timely intervention to tip it onto the bar and behind.
Then a Cody Cropper clearance was intercepted by Elliott Bennett, he centred immediately but Brown failed to get a proper connection on his header and the chance was gone.
But despite offering little as an attacking force, it was MK who opened the scoring on 36 minutes.
As Rovers backed off, Dean Bowditch took full advantage to advance before threading the ball through to Samir Carruthers and the midfielder had far too much time to take a touch before firing beyond Steele from the edge of the box.
However, the home side should have been back on level terms within 60 seconds. Gomez with a shot from distance that Cropper did well to save, but Brown put the rebound high over the bar with the goal at his mercy.
Rovers huffed and puffed in the remaining minutes of the first half, a Darragh Lenihan effort from 25-yards that looped off a defender and was easily claimed the only effort of note in a hugely disappointing first 45.
No doubt with Paul Lambert's half-time talk still ringing in their ears, Rovers came out with the bit between their teeth in the second half.
Within eight minutes of the restart the home side were back on level terms, but it took three attempts before the ball finally nestled in the net.
From a Bennett corner Gomez saw his header blocked, Danny Graham denied, and Grant Hanley thwarted, but Gomez finally forced the ball home with a header from the penalty spot.
Bennett then saw a free-kick tipped wide by Cropper, the resulting corner picked out Shane Duffy but his powerful header flashed the wrong side of the upright.
After knocking on the door repeatedly, on 71 minutes Rovers finally got the second goal their improved showing merited.
Tommy Spurr sent a long throw into the box, Duffy flicked on and Bennett arrived to slam home his first goal in Rovers colours.
Needing to get back in the game, MK Dons suddenly showed more attacking intent.
Dean Bowditch was wide at the back post as sub Josh Murphy's cross reached the Dons man, before captain Dean Lewington fired over from a corner.
When the two sides met back in October Murphy was tormentor in chief at stadium mk, and four minutes from time he delivered from the left to where fellow sub Alex Revell fired home at the near post to make it all square.
Rovers saw claimed for a penalty waved away when Gomez went down in the box under Darren Potter's challenge, but three minutes into added time, the home side struck a third to finally claim all three points.
After Bennett had been fouled 25-yards out, Spaniard Gomez stepped up and won the game with a fantastic free-kick that beat Cropper all ends up.
It was a wonderful way to win the match but Rovers certainly made hard work of it.
ROVERS: Steele, Marshall (sub Henley 78 mins), Hanley (c), Duffy, Spurr, J. Gomez, Lenihan, Evans (sub Grimes 51 mins), Bennett, Brown (sub Jackson 61 mins), Graham.
Subs not used: Raya (GK), Watt, Ward, Conway.
Goals: J. Gomez 53, 90+3 mins, Bennett 71 mins
Booked: Bennett, Brown, Lenihan.
MK DONS: Cropper, Lewington (c), McFadzean, Potter, Bowditch, Carruthers (sub Hall 81 mins), Walsh, Williams (sub Murphy 61 mins), Baldock, Maynard (sub Revell 69 mins), Forster-Caskey.
Subs not used: Burns (GK), Kay, Spence, Emmanuel-Thomas.
Goals: Carruthers 36 mins, Revell 86 mins.
Attendance: 12,693 (including 345 visiting supporters)