Petra Kvitova outlasted China's Li Na 7-5, 2-6, 6-3 to take the Rogers Cup title on Monday.
The 22-year-old Czech earned her first tournament win of the year after taking six titles last year, including Wimbledon.
It was the first of Kvitova's eight career victories to be won in North America.
"I hope it will continue," said Kvitova, who said this week she has had trouble winning in North America because the high humidity affects her asthma. "North America is always tough for me and I'm so glad how I played here this week."
The match featured two Grand Slam champions from 2011, as Li took the French Open. Li is 0-3 in tournament finals this year.
"It was a tough match, this was a tennis war," Li said. "Both players played good.
"She's very tough. She plays the ball so deep. I felt I was always on defense. The last two matches I felt I could be aggressive on the court, but this one I felt I was 70 percent of the time on defense."
Kvitova, seeded fifth, struggled at the start, hitting several balls long. She fell behind 3-1 before she found the range with her forehand and charged back to take the lead.
Even then, she needed to save three break points to take a 6-5 lead, then won the set on her fifth break point against the 10th-seeded Li.
Li took the first 16 points of the second set to grab a 4-0 lead before Kvitova finally held serve.
But Kvitova got her game back for the third, hammering shots deep in the hard court that Li could not return. Li didn't help herself by hitting two easy smashes into the net.
Li's serve was broken at 3-2 when she doubled faulted, then had a return fly wide off the rim of her racket.
"Between the second and third sets when I was in the locker room changing my clothes, I knew I had to attack the balls and play much faster than in the second set, and have a better first serve percentage," said Kvitova, who punctuated the win with an ace on match point.