I have to disagree. I think unending criticism and social stigmatizing of anti-homosexual behavior is the best way to change things. People need to know that their beliefs don't automatically deserve respect simply because they are religious in nature.
I never said anything deserved respect, all I said was that I don't see how people can have their attitudes changed by demonising them .... especially when they are in no danger from it.
Socially stigmatising people who in numbers vastly outnumber those requiring change would not seem to work.
Especially when you can not cause them any harm via the law or government.