TWO goals from Richie Bennett helped the Shrimps make it four wins from six matches as they moved nine points clear of the League Two relegation places.
The January loan signing scored in either half as the Shrimps made it seven goals and six points in their last two home games.
Ousseynou Cisse’s own goal also contributed to a three-goal lead for Jim Bentley’s players before Dons substitute Kieran Agard scored twice in seven minutes to set up a tense finale.
However, Aaron Collins wrapped up another three points for Morecambe when he broke the offside trap to slot home the decisive goal late on.
The Shrimps’ boss stuck with the same team that beat Forest Green on Saturday and they had to work hard all evening against a good side, and the gale force winds that Storm Gareth brought with it.
However, with the conditions in their favour in the first half, the Shrimps started busily with skipper Alex Kenyon twice chancing his arm in the opening 10 minutes.
Bennett saw one effort blocked and the follow-up held by Dons keeper Stuart Moore before the deadlock was broken on 21 minutes.
Excellent work on the left from Rhys Oates ended with him crossing for Bennett to powerfully head home.
Twenty minutes and the lead was doubled in somewhat fortuitous fashion as Cisse inadvertently diverted Zak Mills’ cross over Moore.
At the other end, Jake Hesketh and Alex Gilbey came closest for the visitors, who fell further behind 12 minutes into the second half.
There was nothing lucky about Bennett’s second of the night as he sent a stunning 20-yarder past Moore.
With the Dons struggling to create much in the way of clear chances they brought Agard off the bench and changed formation.
The substitute was soon in the thick of the action as he made it 3-1 on 70 minutes when he diverted a right wing cross past Mark Halstead and six minutes later took advantage of a mistake by the Morecambe stopper to make it 3-2to give his side a chance of getting something from the game.
But as the Dons pushed forward the Shrimps were able to find gaps in their defence.
Bennett was denied a hat-trick by a crossbar from a header before Collins finished off superbly after being played in by Kevin Ellison, rounding Moore cooly before slotting into the empty net to cap a fine evening for the Shrimps.
Morecambe: Halstead, Mills, Old, Sutton, Conlan, Mingoia, Kenyon, Wildig (Fleming 72), Oates (Ellison 62), Collins, Bennett. Subs not used: Roche, Mandeville, Mendes Gomes, Brownsword, McKay.
MK Dons: Moore, Brittain, Houghton, Martin, Lewington, Cisse (Walker 55), McGrandles, Gilbey, Hesketh (Agard 59), Aneke, Wheeler (Simpson 68). Subs not used: Nicholls, Watson, D’Ath, Harley.
Referee: Ross Joyce. Attendance: 1,460.