I pay cash for nearly everything, and thus far I have not had anyone refuse it. But I will keep track of when it starts happening.
Cedar
The major one is airline carriers.
I've also been to festivals downtown (Chicago) where a few of the merchants (generally large restaurants that did millions in revenue per year) didn't accept cash. I asked why and they said that it was for safety... owner didn't want a bunch of cash sitting around on hand and felt that using the cashless POS would increase safety for employees. Personally, I think that's BS and it's much more likely that the owner was worried about employees pocketing cash in the crowded environment where no real security system was set up to monitor transactions.
That's actually what prompted me to research into the legality of that approach.
I guess it's legal (here in Illinois at least) so long as you're not handed whatever it is that is putting you in that establishments debt in the first place. If they had handed me a chicken leg and asked for $8... they couldn't refuse my $8 cash. If they did, I could walk away and they couldn't (successfully) pursue me legally (though that doesn't stop them from calling the cops if they want and wasting your time). On the other hand, if they told me it was $8 for a chicken leg and I tried to give them cash and they said credit only... there's not much I can do legally. As a private establishment, they reserve the right to refuse service and since I'm not in their debt I can't use my currency because there is no debt to apply it too.
Illinois also has a weird law on the books that says that landlords who run more than 100 properties (large apartment/condo buildings) can set the method of payment, and refuse other methods... they just have to make it known up front and give the prospective renter the terms before anything is signed.
So essentially you can sign a rental agreement for $1700 a month, and if you try to go to the office and pay in cash they can refuse and force you to pay via check/card/direct deposit, so long as the rental contract you signed stipulated methods of allowable payments within said contract.
---
For the record, I don't like any of this and if I was king I'd re-write the law and say that all merchants had to accept legal U.S. tender for all transactions. There are a lot of laws/rules I don't agree with, that's why I try to research them and find loopholes.

If there are any lawyers on the site and you saw that anything I wrote was wrong, please correct me. I'm not a lawyer (I work for a corporation in regulatory compliance where I do respond to legal subpoenas... but I don't practice law), and I always like to know where my interpretations might not hold up in practical settings.