Booth got his fourth goal to put Florida up 2-1 when he beat Price midway through the second period after he was hauled down by Montreal defenseman Jaroslav Spacek on a breakaway.
Price made two big saves on another chance by Booth moments earlier, including a spectacular left pad stop on the forward's backhand off the rebound.
"I was just thinking about getting him to move from side to side, that was my whole objective," said Booth, who has scored on two of his three career penalty shots. "I think that's the best chance you have with how good he is as a goalie. A couple of breakaways earlier I just shot and he made a good first save and a good rebound."
Price stopped 28 shots for the Canadiens, who had their four-game winning streak snapped.
"We did what we had to do on the road," Panthers coach Peter DeBoer said. "We got great goaltending. That's a great team. They come at you with a lot of firepower, a lot of speed, and we needed to be at the top of our game in order to get a win."
Mathieu Darche pulled Montreal even at 1 early in the second.
Andrei Markov made his season debut after missing the Canadiens' first 10 games while recovering from knee surgery. The Russian defenseman hadn't played since injuring his knee in the first game of Montreal's second-round playoff win over Pittsburgh.
"It's not easy to come back from long-term and I was lost a little bit," Markov said. "It was much different compared to practice -- the intensity is very high -- so the first period was a little tough but in the second and third I felt better."
Booth was stopped twice by Price on another breakaway shortly before he was awarded his penalty shot 11:19 into the second.
The Montreal goalie stopped Booth's initial shot and stuck out his left pad to deny the Florida forward's backhand shot off the rebound at 10:24.
Booth got another chance to go in alone on Price moments later and managed to flick a shot toward the net while he was sprawled on the ice after he was tripped up by Spacek.
Given one more opportunity on the ensuing penalty shot, Booth deked and beat Price with a shot on his forehand to restore the Panthers' one-goal lead at 2-1.
Matthias scored his second of the season with 3:22 left in the third.
Montreal had a 5-on-3 for the first 1:16 of the third. Canadiens captain Brian Gionta had two good scoring opportunities, including one attempt that was blocked by Dennis Wideman's skate, during the two-man advantage, which carried over from the end of the second.
"I knew the puck was over there, I knew one of their guys had to be over there so I just kind of tried to throw everything I had that way and hope it didn't go in," Wideman said. "I don't know how it stayed out but it did."
"I thought we had three pretty good scoring chances out there," Montreal's Tomas Plekanec said. "Give the credit to Vokoun, he played well. He made some very strong saves through the whole game and we didn't play as well as we should have."
Frolik, a healthy scratch in Thursday's 5-3 loss in Ottawa, got his own rebound and put a backhand past Price for his first of the season 12:10 in.
"Frolik responded, and Matthias responded with his best game," DeBoer said. "Those two have been healthy scratches two of the last three games so we got the response we wanted after the Ottawa game. I think that was important. We went off the map a little and instead of skating we took the day off basically to get ready for tonight and I think the guys responded with a gritty effort."
Darche tied it at 1 with his second goal 2:13 into the second.
Panthers C Stephen Weiss did not play after hurting his ankle while warming up with a soccer ball earlier in the day. ... Booth scored on Buffalo's Ryan Miller on his first career penalty shot in a 3-2 shootout win on Jan. 19, 2009. Jose Theodore stopped him later that season in a 6-2 win in Washington on March 1. ... Three of Florida's last four penalty shots have been against Montreal. Matthias scored on Jaroslav Halak last season in a 2-1 win on Jan. 26, and Radek Dvorak beat Price on another penalty shot in a 5-1 win on Jan. 29, 2009. ... Ds Ryan O'Byrne and Alexandre Picard, and C Dustin Boyd did not dress for the Canadiens.