In an all-action, error-packed contest, Italy held on for a 19-14 victory in the face of intense Canadian pressure in the closing stages.
Both sides scored one try, with the difference coming from the boot of Italy's New Zealand import, outside-half Rima Wakarua.
He notched four penalty goals and a conversion. His opposite number, Jared Barker, had a night to forget as he missed several kicks at goal that would have given Canada the win.
For the Canadians, the defeat means they can no longer qualify for the quarter-finals.
Italy: G Canale, M Bergamasco, C Stoica, M Dallan, D Dallan; R Wakarua, A Troncon (capt); A Lo Cicero, F Ongaro, L Castrogeovanni, S Dellape, M Bortolami, A De Rossi, A Persico, S Parisse
Replacements: C Festuccia, S Pergini, C Checchinato, S Palmer, M Mazzantini, F Mazzariol, A Masi
Canada: Q Fyffe; W Stanley, J Cannon, M Di Girolamo, D Lougheed; J Barker, M Williams; R Snow, M Lawson, J Thiel, C Yukes, A Charron (capt), J Cudmore, J Douglas, R Banks
Replacements: A Abrams, K Tkachuk, J Reid, J Jackson, S Fauth, B Ross, M King