David Rittich made 35 saves for Calgary (25-18-5), which outshot the Canadiens 15-5 in the third period.
"They pushed us in the first two periods and we answered in the third, but it wasn't enough," Rittich said. "That streak is [over], but we've got an opportunity Thursday to start a new one."
Jordan Weal gave the Canadiens a 1-0 lead with his fifth goal at 13:30 of the first period. After Jeff Petry lost control on a wraparound attempt, Weal collected the loose puck, spun and shot between Rittich's pads.
"I saw him coming for the wraparound and I just tried to get to the net," Weal said. "That's where a lot of things are happening right now, and the coaching staff just brought it to our attention that we just need to get to the net a little more. I saw he was going for the wraparound; he likes that play and he's got great speed and can make that play, and the puck just popped out to me."