Travis Konecny had two goals, and Joel Farabee also scored for the Flyers (1-1-0). Ivan Fedotov made 26 saves, and rookie forward Matvei Michkov had an assist for his first NHL point.
"You can't win every game in this league," Farabee said. "They're a good team. They're a heavy, hard team. They hit us. They were physical. Credit to them, but I think just keep focusing on us here on this trip and we'll keep getting better each day."
Huberdeau gave Calgary a 1-0 lead at 5:37 of the first period. Martin Pospisil's centering pass from behind the net deflected up off Huberdeau's shoulder and over Fedotov before dropping into the net.
"I guess I was getting some nice bounces out there, just working hard, getting rewarded," said Huberdeau, who has scored in consecutive games to start a season for the first time in his NHL career. "I don't think I've ever scored a goal off my shoulder. So that was a great bounce. To start the game like that, that's huge."
Weegar made it 2-0 at 7:43 when he one-timed a return pass from Huberdeau past Fedotov's blocker from the high slot on the power play.
"Their first goal was a really lucky bounce and then they get one on a 4-on-3," Farabee said. "When you're two goals behind right away, it's kind of tough. Honestly, I really liked our game. At the start of the third period they had like 12 shots or something. We had a lot of chances that we didn't bury, myself included. Definitely [stinks] getting behind early. I think there's some things to like, but definitely some things to clean up, too."
Konecny tapped in a return pass from Scott Laughton on a short-handed 2-on-1 rush to cut the Flames lead to 2-1 at 7:05 of the second period. He led the NHL with six short-handed goals last season.