CALGARY, Alberta (AP) -- The Calgary Flames turned to their power play in the third period to take over first place in the Northwest Division.
The Flames took a one-point lead on idle Minnesota. Each team has five games remaining.
"It feels good but there's no way are we assured of anything right now with everything being so tight," Calgary's Alex Tanguay said.
Clinging to a 2-1 lead, the Canucks got into penalty trouble. They got caught with too many on the ice at 8:10 and then Taylor Pyatt took a tripping penalty at 9:36.
Although Vancouver survived the first penalty, the steady Calgary pressure led to Alex Burrows intentionally pushing the net off its moorings at 10:25, which resulted in another Calgary two-man advantage, this one for over a minute.
The Flames would need only 21 seconds, however, with Langkow redirecting a shot from Tanguay past Roberto Luongo to tie the game.
Still with a one-man advantage, Calgary struck again when Adrian Aucoin fired a long pass from his own end to Phaneuf at the Vancouver blue-line. With the Canucks caught on a line change and scrambling to get back into the play, Phaneuf skated in and blasted a 40-foot slap shot into the top corner over Luongo's blocker for the go-ahead goal.
"I saw them change and Aucoin made a really good play up and I had a little bit of room to walk into it," Phaneuf said. "He came out and I just tried to get it up as quick as I could over him."
Jarome Iginla added his 49th of the season for Calgary. The Flames have won four in a row at home and are 6-0-3 in their past nine at home.
"It started in the second period, we didn't make smart plays with the puck and kept turning a lot of pucks over and pretty much had to defend the whole second period," Canucks defenseman Sami Salo said. "We have our next game tomorrow so we have to forget this one and regroup. It's another huge game."
After getting outshot 21-7 and falling behind 2-0 in the first period, the Flames turned the momentum around in the second with a much more inspired 20 minutes in which they outshot Vancouver 18-3.
"The first thing we talked about when we came in here [after one period] was let's continue to get after them, let's not sit on this lead," Brendan Morrison said.
"We say all the right things but then we go out there, and yeah they made some adjustments, but we got caught back on our heels a little bit, we weren't getting pucks deep, we start taking penalties and the momentum of the game has completely shifted."
Calgary cut its deficit to 2-1 on Iginla's goal at 2:11.
"We just kept coming," Iginla said. "We didn't get discouraged, nobody got frustrated on the bench. We felt like we were going to find a way to get ourselves back in the game."
Aucoin's shot from the blue-line was stopped by Luongo but from a scramble, Langkow got his stick on a loose puck knocking it across the crease to Iginla for an easy tap-in.
Luongo made 37 saves in his 25th start in a row.
Miikka Kiprusoff was back in net for the second straight night for the Flames and had 32 saves.
Calgary LW Kristian Huselius was a healthy scratch. It was the first game missed for Huselius, who ranks second on the Flames in points (65) and third in goals (24). Rookie Dustin Boyd was inserted for him. ... Calgary RW Owen Nolan has no goals in 19 games. ... Aucoin's assist was his 300th NHL point.