Shooting the 6-ball, for example, with the 2-ball on the table is a foul, independent of what happened earlier in the game, and can be called at that point -- the foul then is shooting the 6 out of order, not shooting the 3 out of order. It's not what you called a "continuing foul," it's just a foul that can be called on its own.
What do you think should happen? Should S go through the balls in order after the original mistake and pocket the 9-ball for the win, with the 2-ball still on the table? So if you skip a ball and it's not called it's the same as originally pocketing it in order? But what if S misses, say, the 6-ball -- does the opponent now have to go back and shoot the 2-ball or is it forgiven for him as well? What if he does go back to the 2-ball but misses it -- does S now have to shoot it whereas he didn't have to a couple innings ago? Your analysis doesn't make sense to me.