You can't just look at the battle of Zama itself as being Scipio's brilliance. A good general doesn't just go out and seek open battle and try to win. A good general manipulates the situation to force his opponent to make decisions which otherwise they wouldn't have to make. Look at Mao's early campaigns in China, he never offered open battles, only skirmishes, yet succesfully increased his power base while weakening his opponenets (perhaps he should be a candidate for greatest leader).

Scipio was brilliant because unlike the other Roman generals he didn't offer open set piece battles against Hannibal, but rather he attack his supply lines and Hannibal's resource centre allies in Spain. This forced Hannibal to become reactionary as he constantly had to try and reinforce his position while seeking an open battle. The attack on Africa was brilliant, because while Hannibal couldn't threaten the city of Rome due to the logistical difficulties of such a siege, Scipio was able to threaten the Carthaginian heartland itself. This meant Hannibal had to rush to Africa, meaning he couldn't consolidate his position there and that he wasn't in control of the situation.

From there look at what can follow: Rome had vastly more resources by this point to throw into the conflict than Carthage, so anything other than a decisive win for the Carthaginians where they capture or massacre the Roman army would pretty much mean the end of Hannibal's campaigns against Rome. Even a marginal victory or draw at Zama would probably have resulted in Carthage trying make peace with Rome on Rome's terms.
In short because of Scipio's excellent campaigning in the build up to Zama, winning the actual battle itself wasn't terribly important as long as sufficient casualties were inflicted on Hannibal's army. Scipio could always have retreated, regrouped and reassaulted. It's like Sun Tzu says, the good general has already won the battle before it begins. Scipio didn't fight battles, he fought wars.