Cooke broke the deadlock in the 58th minute and then plundered the Shrews' 76th minute winner despite protests he had fouled defender Drissa Diallo.
Captain Keith Andrews had equalised for the Dons in the semi-final second leg.
Milton Keynes started brightly and Jude Stirling's long throw was clawed behind by uncertain Shrews goalkeeper Scott Shearer inside the first minute.
Clive Platt then scuffed an eight-yard half-volley straight at Shearer from Izale McLeod's knock-back.
On-loan Watford midfielder Dominic Blizzard's 20-yard drive was deflected just over by Kelvin Langmead's heroic lunging block in the 20th minute as Milton Keynes continued to pile forward.
But Shrewsbury found their rhythm and Langmead's nine-yard header from Neil Ashton's in-swinging free-kick flew just wide, before Stewart Drummond's deep cross was bravely clawed away from the head of Leo Fortune-West by Ademole Bankole.
Bankole had an almighty let-off minutes later when he lost possession to Michael Symes on the edge of his own box and then appeared to trip the Shrews striker from behind, but referee Trevor Kettle waved away furious protests for a free-kick.
That scare seemed to spark the Dons back into life and Dean Lewington's swerving 30-yard drive was well held by diving keeper Shearer in the 39th minute.
Dons top-scorer McLeod missed a golden opportunity to break the deadlock eight minutes after the break when he raced clean through on to Bankole's long punt but lobbed the ball badly over the bar from 12 yards with keeper Shearer well off his line.
And substitute Cooke made him pay by putting Shrewsbury ahead at the other end following a swift counter-attack.
Danny Hall's chipped through-ball caught Sean O'Hanlon napping and Cooke stole in behind him to burst through and drill low past Bankole from ten yards.
Symes should have doubled the lead five minutes later but, after wriggling free in the box, his weak 15-yard drive was saved comfortably by Bankole.
The Dons rallied and Platt headed inches wide from Jon Hayes' in-swinging cross, before Andrews lashed a 16-yard half-volley just past the angle.
But Andrews went one better moments later by equalising for the Dons from close range.
Lewington's deep cross was knocked back into the danger zone by McLeod after Marc Tierney had mis-directed his defensive header and Andrews scuffed in his seventh goal of the season at the near post from close range.
But Cooke controversially restored Shrewsbury's lead just two minutes later with a clinical finish after he appeared to foul Diallo in the build-up.
Cooke appeared to trip Diallo, but the referee waved play on and the veteran striker raced on Symes' pass and finished well inside the near post from ten yards as the Dons protested furiously.
McLeod wasted another gilt-edged chance to equalise for Milton Keynes when he blazed over from seven yards after Shearer had flapped at Stirling's long throw in the 77th minute.
Dons full-back Gareth Edds belted a 20-yard drive against the post seven minutes from the end before he saw another thunderous long-range effort tipped over the bar by Shearer in stoppage time.