Seeing as the debate is heating up down south of here, and the Canadian experience is getting invoked fairly regularly on both sides of the debate, I thought I would offer my two cents on what happened up here, and how, and why, and what I would have preferred to have happened.
The debate, as I recall, began with the issue of spousal benefits. Namely, gay couples wanted to be able to claim the benefits for the plans into which they were required to pay, or the tax benefits which they could never have. In that, I agreed. Other aspects of the social safety net, like unemployment or welfare, we pay into in the hope that we never need them, but also in the knowledge that help will be available if we need it. Taking their money for spousal benefits knowing full well they would never get it back nor derive any benefit from it, was a palpable wrong. The choice was to either exempt them from those payments, or recognize their unions.
The debate was circumvented, or ratcheted up a notch, depending on your point of view, when a gay couple in Ontario launched a Charter case, claiming that denying the right to marry was a denial of a fundamental human right, according to our Charter, or Bill of Rights.
(Side note: The Charter came about with the repatriation of our constitution in the'80's. It was decided that it was time we had a Bill of Rights like the Americans, but somehow they thought they could do a better one. Frankly, the '80's were not the time to create a document for the ages. Under pressure from feminist and minorities, the Charter was written to include the right not to be discriminated against on any grounds. It sounds like a good right, but the problem is that discrimination has no definition: it can be anywhere, it can be anything, and right now, the person who decides if discrimination is happening is the person to whom it is happening. There are people out there who are ready and willing, even looking for the chance to be offended at every possible turn. As it now stands, the right not to be discriminated against is a right that includes the right not to have hurt feelings, and the motives of the accuser were irrelevant.)
The gay couple found a sympathetic judge who overturned law and precedent and allowed them to marry. The Government of Ontario mulled over this decision, and whether or not to appeal- they had every single legal precedent on the issue behind them, whereas this new decision had none- and opted not to, and they legalized it. The Federal Government soon followed suit. I should point out, none of these governments had raised this issue during an election, therefore none of them had a mandate for their actions. And that is how gay marriage became law in Canada. Some groups vowed to fight it, but the fight died out fairly quickly, as the reaction of the majority of Canadians was "meh." Whether or not Canadians were swept away by a wave of tolerance or indifference is a matter of debate.
That is how it happened, to the best of my knowledge. The action I would have supported at the time was not something that came up for debate, or was ever seriously considered, so I will outline it here. I wanted the Government to get out of the marriage business entirely, and to recognize domestic unions, and to leave marriage up to the religious institutions. I would have preferred it if we had a system like in Italy, where, if you get married, you go a judge and get legally married, then to a church and get sacramentally married. I wanted this for a few reasons. First, it would help protect the Church. While it is convenient to have churches that do both right now, I think it could bite us before long, and I would prefer to have a firewall between government and religion. Secondly, there was another group searching for spousal benefits at the same time as the gay community, one that is unfortunately not as well organized and does not get a sympathetic hearing, and was ultimately pushed aside and ignored as the debate became more heated, and that group was siblings.
It occasionally happens that some siblings, for whatever reason, never marry or move out and end up living together all their lives. The benefit they were looking for in particular was survivor benefits, normally doled out to the widow or widower. Almost inevitably, one sibling dies first, and the survivor is left in a lurch, half the household income gone, and without any other support. Domestic union recognition would have given them access to that benefit. Notice, I am not saying siblings should be allowed to marry, that would be loopy, at least for now.
My solution was never seriously brought up, to the best of my knowledge, which is a pity. I believe that this solution would have been hated by everybody and would have made everyone miserable, which in my estimation is the hallmark of a perfect compromise.
One of our Prime Ministers once famously remarked that the government has no place in the bedrooms of the nation. That line was invoked fairly often during the debate, but ultimately it legalized relationships that are fairly much based in the bedroom. It would have been better, in my opinion, for the government to say "We are out of this business entirely. How you set up house is your business." I know the objection: this would also open up the gates for bestiality and polygamy. Perhaps, but not yet. But, should these ever become legal, as it seems they might, at least they would not be called "marriage".