Cash has no overhead, no transaction fees. I use cash for local businesses because that 3-5% matters. I don't think Visa and Co need that money as much as my local businesses do. When buying from huge businesses, I'll use plastic because it's more convenient and they can take the hit.
Cash is also largely untraceable and does not leave transaction records with my name on it. Sometimes I buy things that I don't want people to know that I've bought.
These, especially the latter, are two things I'm not really willing to compromise on. Some people dream of a cashless economy, but I would not like it.