Canada got on the board first as Adam McQueen knocked down an early penalty goal to put the host team up 3-0 less than twenty minutes into the game.
Ten minutes later, Jack Fitzpatrick pushed his way across the line to give Canada the 10-0 lead following the conversion from McQueen.
Joaquin Prada pulled Uruguay within seven points as he knocked down a penalty goal to trim the lead heading into the half. Uruguay scored an early second half try from Pablo Bueno to pull even with Canada.
But Scholz's try in the final moments of the game sealed the victory for the Canadian squad.
"It was a great effort," said Scholz. "We made a lot of mistakes and we left a lot to be worked on but the guys really pulled it together at the end there and we really came through when we needed to.
"A wins a win and we'll move on."
Despite the victory, Canada's head coach Kieran Crowley said his team has a lot of work to do.
"We need to work on ball security to start, the placement of it, the clean up," he said. "We certainly need to work on our skill level. We just turned over too many balls, we have to do better."
Up next for Canada is a clash against the United States on Tuesday while Uruguay faces its border rival Argentina.
Canada's captain Andrew Tiedemann was forced to exit the game with a cut on his head. Doug Wooldridge replaced the injured captain in the line up.