Brian Elliott made 34 saves for the Flames, with his best coming with roughly 15 minutes to play when he stopped Jeff Skinner from point-blank range.

Eddie Lack finished with 21 saves. He made his second straight start for Carolina.

Gaudreau had his third two-goal game of the season, scoring the go-ahead goal with 5:10 left in the second period when he scooped up his own rebound and slipped it past Lack. Gaudreau tacked on an insurance goal with 8:55 remaining in the third with a wrist shot.

His scoring binge came after Ferland tied it on a breakaway, splitting the Hurricanes' defensemen and beating Lack high with 13:55 left in the second.

It came after Rask put Carolina up 1-0 at 4:54 of the first, beating Elliott with a wrist shot from the circle for his first goal since Jan. 13.

NOTES: The Flames improved to 24-0-1 when leading after two periods, the second-best mark in the NHL behind Pittsburgh (25-0-0). ... Calgary went 4-0-1 on its five-game trip. ... Carolina scratched LW Brock McGinn with an unspecified injury sustained Friday night in a victory over Ottawa. ... Hurricanes D Noah Hanifin assisted on Rask's goal for his first point since Jan. 13.