bitcoin can never replace cash as it's too slow and merchants all need speed....
We need something faster for the world...
I can see online merchants accepting it, almost all of them eventually. Because they can wait for 2 confirms, 6 confirms, whatever they desire. I can also see smaller purchases, like coffee shops and what not, accepting them, like many do already.
But I do agree it will tough for major retailers to accept it. It simply takes too long to confirm payment. People use the facts Visa can support up to 10k transactions / second, BTC is around 7 / second. Long way to go.