That money isn't free though - that's accrued from the very places you are charging. Banks take their 2%, you get 0.5% (or whatever, this isn't a dick measuring contest). Overall we as a consumer society lose 1.5%. I won't play that game.
Banks win, stockholders in banks win, but consumers lose. The invisible hand in full effect.
By not playing the game, you are losing. Businesses already have the 3% fee incorporated into their prices. So by paying cash you are paying the full extra 3% to Visa. By using one of Visa's rewards cards you are only paying an extra 2% and you get to keep 1% for yourself.
You are going to buy that $50 tank of gas regardless of if you pay cash or credit. The question is why pay $50 when you can pay $49? If you fill up every 2 weeks, you could 'save' $26 a year by using a card that gives 2% cash back on gas rather than cash.