It's pretty incredible to me that Australia hasn't voted through a yes for gay marriage yet.
The reason is we actually have two conservative parties.
The Liberal-National coalition is basically a conglomeration of free trade and anti union ideologues, rural political groups and business groups. They have attracted the support of right wing conservatives from the blatantly racist to the moderate conservative progressives as well as the more conservative religious groups.
The Labour party which is really a conservative pro-union party has become an umbrella for anti conservative and progressive ideologies. They attract everyone who hate the coalition. One of their biggest backers however is the shop-workers union which has a staunchly catholic conservative leadership group. This is why the vote was never put to parliament while Labour was in power.
The greens hold the balance of power in the senate and basically support the Labour party due to Labour being much more accommodating to left wing 'ideologies' such environmental protection, meaningful support for welfare, better public school funding, etc.
They however have no real power in the lower house.
There it's either Labour or LNP coalition who call the shots.
So even though most coalition voters and most labour voters support SSM the coalition are held back by their hard right faction of the liberal party and the Nationals and Labour is held back by their right wing faction at the behest of the shopworkers union.
But that may be changing...
Control of the shoppies union has been changing and they finally ended their opposition to SSM in August this year. I believe they now have no position on the matter.
There is hope.