>These are businesses, not charities.
It's not just that: these are businesses, not the government. A lot of free-speech advocates and libertarian thinkers seem to think somehow that private businesses somehow have a responsibility to uphold free speech, and they simply don't. It's the government that can't restrict you from free speech (in the USA); but companies don't have to put up with it on their property or when using their service.