Christine Sinclair had the first shot at goal, just clearing the bar but it was to be one of very few chances for the Canucks, as France chalked up 25 efforts at goal.
A comedy of errors saw Melissa Tancredi played in by Sinclair and although her touch let her down, the eventual ball in mas met by Sinclair but headed wide with keeper Sarah Bouhaddi having tripped over her own player.
Elodie Thomis immediately had an opportunity at the other end but Erin McLeod narrowed the angle and blocked the shot. Lauren Sesselmann later made a crucial interception to a pass into the box.
The last action of a half of few chances was Marie-Laure Delie firing over from 20 yards for France.
France started the second half well and when Thomis found Louisa Necib, the deflected effort was well saved by McLeod, despite having to change direction.
France threatened again with a good run by Camille Abily and cutback from which Thomis hit the post and Necib's follow up was deflected wide. Seconds after, Eugenie Le Sommer's header set Thomis clear but she hit the bar. The chances continued as Gaetane Thiney worked a low cross with which Le Sommer clipped over the top.
Desiree Scott was forced into a clearance off the line from a Corine Franco shot following a corner, as France got closer still. Franco's close-range strike was turned over for a corner and the same player headed narrowly over.
Sonia Bompastor's delivery was nodded over by Abilly as Les Bleues continued to search for that elusive goal. Le Sommer was inches wide with a header coming down to the last 2 minutes.
Wendie Renard made a vital stop to prevent Sinclair going through on goal and from a deep free kick, Kaylyn Kyle was wide.
Then in stoppage-time, Diana Matheson slotted into a largely unguarded net after Bouhaddi's block fell to her for a dramatic conclusion.
Canada: McLeod, Moscato, Wilkinson, Matheson, Sesselmann, Scott, Sinclair, Schmidt, Tancredi (Timko, 77), Filigno (Kyle, 56), Nault (Chapman, 84)
Unused Subs - LeBlanc, Stewart, Parker, Booth.
France: Bouhaddi, Renard, Georges, Soubeyrand (Abily, 54, Catala, 90+2), Franco, Bompastor, Delie (Le Sommer, 61), Thomis, Necib, Bussaglia, Thiney
Unsued Subs - Deville, Boulleau, Meilleroux, Viguier
She Kicks - the online news service for women's football