London Scottish forward James Phillips's converted try with less than 10 minutes remaining completed the comeback by the Greene King IPA Championship XV at Sixways Stadium.
Canada, which was missing some of its top players, led for much of the afternoon but was outscored 21-5 in the second half.
Canadian coach Kieran Crowley called it a disappointing result.
"The start of the second half we gave away two pretty quick tries," he said.
"We dropped the kickoff at the start of the second half, we put ourselves under extreme pressure because of that. ... just those little skill things that we have to get better," he added. "Because you can get away with that at competitions back home but you can't get away with them at this level. That's what really came back and bit us."
Mark Bright of London Scottish and Bristol's Jack Tovey and Marco Mama also scored tries for all-stars, who added four conversions.
Canada got two tries from scrum half Gordon McRorie and a single try from Kyle Gilmour. James Pritchard added two penalties and a conversion.
The game at Sixways in Worcester, England, was the first of four on Canada's November tour.
Canada, ranked 17th in the world, will meet No. 22 Namibia in Colwyn Bay, Wales, on Friday, No. 9 Samoa in Vannes, France, on Nov. 14, and No. 16 Romania in Bucharest on Nov. 22.
"We just have to get better at everything we're doing," said Crowley.
Canada led 18-7 at the half with tries by Gilmour and McRorie sandwiched about an all-stars try by Bright.
A converted Tovey try cut the deficit to 18-14 before Canada made life difficult for itself with hooker Ray Barkwill sent to the sin-bin for 10 minutes. Mama's try put the all-stars in the lead for the first time, by a 21-18 margin.
McRorie's second try restored the Canadian lead but the conversion attempt was charged down to make it 23-21 Canada.
Worcester scrum half Jonny Arr came close to scoring a try with 11 minutes left but was judged to be in touch after the play was reviewed by the television match official. Phillip's try put the all-stars ahead for good.
Five of the players in Canada's matchday 22 play in the Greene King IPA Championship when they are not wearing the Maple Leaf.
Pritchard is a longtime member of the Bedford Blues. Prop Andrew Tiedemann and lock Brett Buekeboom play for Plymouth Albion and locks Tyler Hotson and Jon Phelan wear the colours of the Doncaster Knights.
Sunday's game fell outside the International Rugby Board's November test window, so top clubs did not have to release their players.
Samoa, Namibia and Romania will join Canada at next year's World Cup, with Canada and Romania both featured in Pool D, alongside No. 5 Ireland, No. 7 France, and No. 14 Italy. Saskatoon prop Hubert Buydens will lead Canada, with regular skipper Tyler Ardron (Ospreys, Wales) injured and not available for the start of the tour.
Saskatoon prop Hubert Buydens captained Canada on Sunday in a game that was not considered an international Test match.
Canada is looking for improvements on this tour after losses to Japan, Scotland and the U.S. in June. A domestic Canada 'A' side also disappointed in finishing third at the recent Americas Rugby Championship.