Calgary captain Jarome Iginla also scored for the Flames (4-0), and rookie defenseman T.J. Brodie notched his third goal in two games.
Henrik Karlsson, acquired by the Flames from the San Jose Sharks during the offseason, made 19 saves and earned his second win of the preseason.
Iginla scored his second goal of the preseason just 17 seconds into the game. Olli Jokinen's initial shot was stopped easily by LaBarbera, but Iginla swatted in the rebound before the Phoenix goalie could cover the puck.
The Coyotes tied it five minutes later when Doan netted his team-leading third goal. Wojtek Wolski intercepted Jay Bouwmeester's failed clearing attempt and sent a pass to the slot, where Doan wristed a shot into the top corner.
LaBarbera made a pair of blocker saves on shots by Jokinen and Mikael Backlund before standing his ground to turn aside another scoring chance by Iginla.
Hagman put the Flames up 2-1 early in the second period when he sent a heavy shot into the top corner over LaBarbera's outstretched glove hand.
Jokinen left the Calgary bench during the second period after playing just three shifts and didn't return.
Brodie then gave the Flames an insurance goal 5:36 into the third when he took a pass from Hagman and fired a low point shot past LaBarbera.
|Jarome Iginla (1) Wrist shot - ASST: Olli Jokinen (1), Alex Tanguay (1)|
1 - 0 CGY
|Shane Doan (1) Snap shot - ASST: Wojtek Wolski (1)|
1 - 1 Tie
|Niklas Hagman (1) Wrist shot - ASST: Mikael Backlund (1)|
2 - 1 CGY
|TJ Brodie (1) Slapshot - ASST: Niklas Hagman (1)|
3 - 1 CGY
|Power Play %||20.0%||18.8%|
|% on Road||23.2%||19.0%|
|% at Home||17.0%||18.7%|
|Tim Jackman Tripping - 2 min against Sami Lepisto|
|Derek Morris Interference - 2 min against Niklas Hagman|
|Niklas Hagman Slashing - 2 min against Adrian Aucoin|
|Craig Conroy Tripping - 2 min against Kyle Wellwood|
|Adam Pardy Fighting (maj) - 5 min against Taylor Pyatt|
|Taylor Pyatt Fighting (maj) - 5 min against Adam Pardy|
|Martin Hanzal Hooking - 2 min against Stefan Meyer|
|Ray Whitney Hooking - 2 min against Craig Conroy|
|Shane Doan Holding - 2 min against Robyn Regehr|
|Jonathan Rheault Interference - 2 min against Scottie Upshall|
|Steve Staios Slashing - 2 min against Scottie Upshall|
|Derek Morris Elbowing - 2 min against Jonathan Rheault|
|Tim Jackman Tripping - 2 min against Adrian Aucoin|