Aces almost opened the scoring in the opening minute through Collins Mbesuma, but Virgil Vries pulled off a great save to deny the Zambian.
Maritzburg soon created a chance of their own through Thamsanqa Mkhize, but Nonyane cleared the striker’s effort off the line.
In the 12th minute great interplay between Mbesuma and Ndlovu saw the latter handed a fine chance, only for Vries to make another excellent save.
Aces looked the more confident and creative of the two teams and they deservedly claimed the lead on 26 minutes when Nonyane curled home a free-kick.
Mondli Cele and Deolin Mekoa had chances to level the game up before the break, but goalkeeper Jackson Mabokgwane was equal to the task, while Ndlovu almost added to AmaZayoni’s advantage in injury time, only for another fine Vries save.
The Team of Choice had a chance to equalise early in the second half when Philani Zulu found himself with only the goalkeeper to beat, but he was unable to beat Mabokgwane from close range.
The visitors were made to pay for their spurned opportunities when Ndlovu doubled Aces’ lead on the hour-mark with a superbly-taken goal that saw him turn two defenders and fire the ball into the bottom corner.
Ndlovu was soon replaced by fellow Aces debutant Siyabonga Vilane.
United kept fighting and gave themselves hope of a dramatic comeback when Ghanaian striker Mike Mohammed Anas pulled a goal back in the 75th minute, setting up a nervy final quarter-hour.
However, the Team of Choice were hampered in their efforts to gain parity after midfielder Ryan De Jongh was sent off for a second bookable offence, allowing the hosts to see out the game and advance to the next round.