The reasoning why the SNB will fail is simple and usually runs along two lines:
The market is larger than the SNB.
The Bank of England tried the same with the British Pound (FXB) back in 1992, and ended up failing - this reinforces "the market is larger than" motto.
The reasoning, however, is flawed.
It is flawed, because the present situation is not comparable to Soros breaking the pound. The BoE, back then, was trying to prevent the GBP from devaluing. To do this, the BoE had to buy GBP, which is done by selling other currencies in exchange for it. This exposed the BoE to 2 problems:
The foreign currency reserves are finite;
Those attacking the GBP had access to an essentially endless supply of GBP, because they borrowed those in the U.K. itself, to sell in exchange for foreign currency. They could deliver the foreign currency as collateral, and as long as the GBP didn't gain in value and they had a safety margin and were willing to accept the risk, nothing could stop them.
So basically, the BoE was fighting with limited ammo against enemies with unlimited ammo. Defeat was a near certainty.
Today, however, the SNB is trying to keep the CHF from gaining in value. This is the precise opposite of what the BoE was trying to achieve. In doing this, the SNB sells CHF and gets foreign currency in return.
Now, it so happens that what the SNB sells is actually limitless - the SNB can create an infinite amount of CHF. This basically means that the SNB can only fail in its intent by its own will. This is not very different from when pundits say "the Federal Reserve is running out of ammo". It makes no sense to say it - the Fed makes the ammo, much like the SNB. The ammo never ends.
The floor set by the SNB on EUR/CHF can only fail by SNB's decision. The SNB can produce as many CHF as the market will take; there is no amount it can't produce.