The 22-year-old Czech needed 2 hours, 16 minutes to get past her Chinese opponent 7-5, 2-6, 6-3 on the hard courts at Uniprix Stadium, improving to 8-2 all-time in finals.
Last year's Wimbledon winner claimed a $385,000 grand prize with the triumph, her first of the year.
Li, who had bested Kvitova in semifinal match at the Australian open in January, fell to 5-8 in career finals.
Obama 'selfie' photographer speaks out: 'Photos can lie'
Ohio crash that killed two caught on camera [VIDEO]