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.
Man spent 15 hours in jail for plugging electric car into an outlet at a school
Toddler uninjured after being knocked over by Obama family dog