Well, I think it really depends on scale. For instance, gas stations. If you stop taking cards or push people to cash much harder, then you go back to lines at the one checkout counter, so now you get people going to the next gas station cause they don't want to wait or you're hiring additional employees just to man additional cash registers. Plus, managing cash for 1 out of 100 customers is different than for 1 out of 2 - you need more petty cash on hand, you have to more often cycle for bills for change, you become more of a target for robbery cause you have more cash, your scale might change from an employee making a bank drop off at night to needing Brinks to come because of amounts etc etc.
You also have the issues with making change - most people don't know how today, so unless you also buy machinery to do that, or pay more for what's now more of a special skill in hiring, you've got even more chances for screwups.
The more registers you have to have, the more reconciliation and such you have, this doesn't scale great because it's all hand labor, and if you don't do the double counting and checks and balances, you're really open to a lot of embezzlement / skimming by your employees (again, who unless you're paying A LOT more than the minimum will have a lot more temptation and ability with lots of cash vs swiping credit cards). Heck, McDonalds makes you jump through hoops and try and call over an employee to pay in cash... It mostly is kiosks. If the card processing was really so bad, why wouldn't they be keeping employees taking cash? Because the employee costs are worse IMO.