Do not people have a right to refuse service to anyone in most places/situations?
In the bold in your post. Answer is no. The reasoning is not as simple as you suggest.
Care to explain?
Most places, situations that require some type of "rule" refer to code violations of some number.. no shoes, no shirt, no service, no smoking, no saggy pants, no hoodies, no bags, no alcohol, no pets, no running, no diving, no cell phone, no camera, no cruising, no loud music..etc, No colored people, no fat women, no fat men, no disabled, no homosexuals do not apply here
Race, Sex, Gender, National Origin, Religion, Sexual Orientation are not code violations that require a "rule" in a place or situation, these are protected class and exempt from these types of imposed "rules", the individuals represented in each class could be subjected to follow these rules like everyone else, the "rules" do not apply to the class, only to the situation