Both teams fielded strong lineups to open the pre-season tournament.
"Not everything was good today but it was the first game after three months," said Schallibaum. "But the second half, the team showed a lot of heart ... It's very hard against a good team.
"And we won the game. That's important for the morale. It's a nice day for us."
Graham Zusi opened the scoring for Kansas City in the 18th minute. French defender Aurelio Collin dispossessed an Impact player down the right flank and, seven passes later, Zusi slammed a right-footed thunderbolt from distance.
Di Vaio tied it in first-half injury time after captain Patrice Bernier, from the halfway line, sliced open the Kansas City defence with a perfect through ball. Di Vaio then slotted a right-footed shot home.
Di Vaio was lively in 60 minutes action. He had another good chance at goal but lost his balance as he came into the penalty box. He also got into a minor beef with Collin over a tackle.
Zusi lost the ball in the 61st minute and Impact Academy fullback Maxim Tissot, who had come on a minute earlier, found Wenger, who came in alone and beat the Kansas City goalkeeper.
"First play, an assist on the second goal so it went well for me," said a delighted Tissot. "And it went well for the team. ... It's our first game against real opposition so we're still adjusting."
Tissot has spent four years at the Academy, seeing action in a couple of MLS reserve games last season.
"It felt great," he said of his senior team debut.
Montreal goalie Troy Perkins preserved the tie with a late one-handed save on Ike Opara.
Schallibaum complained about "a little panic" in the first 20 minutes but, given the pre-season timing, seemed unfazed.