Taylor Pyatt scored in regulation for the Coyotes, who extended their season- high win streak to four games.
"You've got to find ways to get points," Coyotes head coach Dave Tippett said. "It was just not a pretty game at all so we'll take the points, stick those in the bank and move on."
Mike Smith stopped 22-of-23 shots in the win.
Olli Jokinen tallied a goal and Leland Irving made 34 saves in the Flames' fourth loss in six games.
Calgary trailed 1-0 entering the third period, but tied the game up 4:01 into the frame on a 4-on-4 when Mark Giordano's slap shot from the high slot deflected off the leg of Jokinen and into the net.
Smith stopped the other six shots he faced and Irving blocked 10 in the final stanza to force overtime.
But Calgary's Mikael Backlund was whistled for tripping 2:07 into the extra frame and the Coyotes took advantage of the penalty with the game-winner when Radim Vrbata fed a pass from the right of the net to the top of the left circle, where Doan blasted a one-timer past Irving.
"We knew it wasn't going to be an easy game." Flames head coach Brent Sutter said. "It's a point you could of had that you let get away from you, but the positive is that you did get a point."
Pyatt gave Phoenix a 1-0 lead at the 7:43 mark of the first period after deciding to keep the puck himself on a 2-on-1 rush and wristing a shot through the pads of Irving.
Phoenix has won nine of the last 12 meetings between the teams...Phoenix went 1-for-3 on the power play, while Calgary was 0-for-3 on the man advantage...Phoenix is now tied with the Minnesota Wild for eighth place in the Western Conference with 58 points apiece...Calgary is tied with the Colorado Avalanche for 10th place with 57 points.