India, who won the opener on Friday, were locked 3-3 at the breather on Sunday.
Apart from Mahadik's strikes in 32nd and 66th minute, the other goal scorers for India were Mohd Amir Khan (4th), Shivendra Singh (21st). Wayne Fernandes (20th and 35th) and Rob Short (23rd) scored for Canada.
India made four changes in the lineup from their last game. Chief coach Jose Brasa fielded three debutants, Singapore Junior World Cuppers Danish Mujtaba, Mohd. Amir Khan and Dharamvir Singh.
India got early success when captain Rajpal Singh, in a crafty maneuver, set up left winger Amir Khan. The Allahabad teenager reverse flicked past Canada goalkeeper David Carter in the fourth minute.
Canada bounced back with superior midfield ball possession engineering numerous onslaughts but Keegan Pereira messed up twice on crosses from Rob Short. Later, Jesse Watson's effort was blocked by Indian goalkeeper Sreejesh.
The hosts, however, equalised in the 20th minute from a penalty corner after Ranjeev Deol seized the ball from defender Sardar Singh within the 23 metre area.
He was, however, tackled by Bharat Chhikara and Wayne Fernandes executed the drag-flick to perfection. But the Canadian joy was short-lived as India forged ahead the next minute from a goalmouth skirmish with striker Shivendra Singh deftly pushing home.
The pendulum swung tantalisingly again with Canada restoring parity in the 23rd minute from a penalty stroke awarded after Mahadik stick checked Connor Grimes.
Rob Short placed the spot push neatly to Sreejesh's left to make it 2-2. India were back in the lead nine minutes later as they got their first penalty corner when midfielder Gurbaj Singh was obstructed by Adam Froese. Mahadik flicked at the top right corner past Carter.
The first half drama continued with Canada putting in everything with orchestrated attacks down the middle as India panicked in deep defence.
The hosts earned another penalty corner at the stroke of half time with Vikram Pillay's foot infringement in the danger area. Wayne Fernandes again sank one past the hapless Sreejesh.
The Canadians put further momentum into their onslaughts in the second half but found Sreejesh impregnable. He foiled two more corner attempts besides blocking attempts from Watson, Grimes and Scott Sandison.
India also wasted two penalty corners with Sandeep Singh first receiving an inaccurate outball and sending the second one wide. The match winner was eventually struck by India in the 66th minute off Mahadik's flick from the team's fourth penalty corner.
India now travel to Surrey, Vancouver to play five Tests there commencing on Wednesday