You seem to keep forgetting one of the most basic rules of etiquette. While the host does have the right, and obligation, to set the dress code, it is also his or her choice on whether or not to enforce it. If another guest were to even try to insist that someone was not dressed appropriately and should go to a different venue, it would be considered a severe breach of etiquette and an insult to the host. That guest would never be invited back by the host, or anyone else.
So, unless you are the host.....
Yes, and what one does when confronted with an actual situation is not necessarily the advice that one gives on a discussion board. On a cruise, there is an appropriate time and place to address such issues -- the passenger evaluation forms at the end of the cruise. I always make a comment, either to the effect that I'm glad to see enforcement of the prescribed standards of evening dress or that this is an area that needs work.