You can't refuse legal tender as a business in the US. If you suspect counterfeit bills, you need proof (the marker or it lacks some security feature like watermark or strip) and then you're supposed to call the police immediately about it. You can refuse the sale in general... but that's a tricky one left to someone else to answer.
Generally, a private business doesn't have to transact with you, so yeah they can just say "no I don't want to sell you this if you're going to use a hundred dollar bill".
Legal tender is only a thing for the settlement of pre-existing debts.