At the end of the day though, I think a balance can be struck so that both parties can get what they want, sort of in keeping with what some of Chinook already said, but with additional stipulation:
So if the small business declines to service a marriage it doesn't agree with, that small business gets an added tax, which compensates the couple for having to find another place that will service them. Basically, the anti-gay/whatever marriage party gets to run its business as their consience sees fit, and the couple party can get what they want and be compensated for the additional time & money they may've wasted & risk they may've taken (any time you get on the road, you're taking a risk) to find a different business to service them.
That's the best I can do at the moment of trying to make it as much of a two way street as possible.