City, struggling somewhat in recent weeks after their domination through most of the season, also had an unbeaten season-long home record to back their claims but once they fell behind after 25 minutes when mid-season signing Henry Fa'arodo scored, it was all uphill.
Manel Exposito got City back to 1-1 with 19 minutes to play but needing more they pressed on to attack and were hit by late goals from Dakota Lucas, who will now get to play for Team Wellington against his old club in the final.
"We needed to have players forward and we were good on the break," said Calcott. "The first goal came from putting on pressure. But we will have to play differently against Waitakere in the final because they've got some of their speedy players back now."
"We must congratulate Wellington and wish them the best in the final," said City coach Ramon Tribulietx. "We've got to come back together and give it our best in the O-League final."
For Waitakere the final, on a yet-to-be-determined date, is the chance for redemption after a stuttering season.
Again under strength and with little to point to as a winning chance, Neil Emblen was given the late-season reprieve of which coaches dream.
The second half was all Waitakere with captain Jake Butler providing the finishing touch to a Ross McKenzie freekick in the 49th minute and Roy Krishna pouncing on a Mark Johnston back-pass to score in the 50th. Krishna netted his second after 63 minutes before de Vries also made it two.