I'll join the chorus supporting the fact that Scipio's plan wasn't supported in the least by the Senate. I believe he was only given permission to go to Sicily, without an army and without a clear mandate to cross into Africa, when he threatened to go to the People with his plan. Effectively the Senate caved in to Scipio to prevent him from stabbing them and their auctoritas in the back and even then gave him nothing in the way of support.
If Scipio was defeated, I don't the Senate would have sent another army. It seemed rather content to just sending army after army to keep Hannibal pent up and making sure he didn't cause any trouble. The Fabian Strategy seemed to be working for them and they had certainly learned patience after Cannae. The war may very well have gone on until someone else decided to invade Africa or Hannibal's army withered away.
Without an invasion, I can see the war dragging on for a long time and the peace treaty really only being a prolonged armistice until someone from the next generation decided to start things up again.