Quickly now...imagine that you are a public servant - in a position that puts you in regular, direct contact with the public that the government has hired you to serve. Do you have the right to deny service to that same public based on your personal morality?
If you answered 'no', then chances are you understand that doing your job means that everybody you deal with gets fair treatment and that the law applies equally to all.
If you answered 'yes', then chances are pretty good that refusing to marry a gay couple is just fine (and Canada has its own variety of this same nonsense)
The problem is that public servants are hired to do a job for taxpayers - and GLBT people are taxpayers and citizens just like everybody else. It's really simple. If you are a civil marriage commissioner, that's cool. If you are a heartfelt Christian, that's cool too. What's not cool is when you refuse to do the job that the government hires/licenses you to do because of some offense taken under your religious beliefs.
If you will, think of a food inspector that happens to be a practicing Orthodox Jew. He can be offended all he wants that a restaurant's kitchen is not Kosher, but he isn't hired to judge that - he's hired to ensure that a the restaurant is fundamentally safe for its patrons to eat at. His religious beliefs have nothing to do with how he assesses the restaurant's kitchen...period.
When it comes to civil marriage ... it's the same thing. If you really can't stomach the idea of marrying a gay couple, then it's time to find another occupation to consume your time, or become an ordained minister. There's nothing in the law that places a public servant's personal morality above the government's law. Period.