I don't understand why someone would make it easier for a racist or homophobe to engage in antisocial behavior while still getting paid. You want them to suffer? Let them come out so we can CHOOSE not to support their businesses/ideologies.  If they don't want to bake a cake for you....then open up your own cake store and take their money away. 

If you force a business to accomodate you, when they don't support your values, you're part of the problem. They are donating that money to causes that are counterproductive.