I am asked this question probably more often than any other, once people realize that I'm American. (Clarification: Although I now have Canadian as well as U.S. citizenship, I have a hard time thinking of myself or my writing as anything other than American. It's just where I'm coming from.)
The people who ask this are themselves Canadian, and I wonder if Americans would ask a version of this question. I can't imagine, back in the U.S., asking an immigrant "Why'd you come to America?" In the first place, it seems rude to me, but beyond that, Americans tend to assume that everyone would live in the USA if they could. While this is not true of lots of people, there's a kind of American confidence that takes for granted what a great country the U.S. is. And, while there are also huge problems there, I do miss that confidence.
To answer the question I go one of two ways, depending on how much I want to go into it with the particular person asking:
(Short answer) Because my partner lives here.
(Long answer) I would still live in the U.S. if Penelope (the "partner" referred to above) had an unrestricted right to live there with me (and if she wanted to). Unfortunately, one of the problems with the U.S. is that federal law (which governs immigration) does not recognize any relationship whatsoever existing between two women, although we have shared our lives for more than fourteen years. For the first half of those years, we did not share a home, or indeed even a country. She is British, and Britain is where we met. In those days, Britain was almost as unwilling to recognize a same-sex relationship as the U.S. still is. Other people have found other solutions, but ours was to find a country where 1) at least one of us could immigrate in her own right, and 2) the other, if necessary, could be recognized as the first one's partner so that we could end up in the same country together.
The country that met those criteria, at that time (2000), was Canada. We do not know if our relationship was taken into account when we immigrated, or if we simply both qualified.
I get very, very tired of people born in Canada, invariably white like me, making comments about "immigrants" when they clearly haven't the first idea what it takes to get into this country. I feel that I have more in common with others who have come to Canada in search of a better life than I do with these people. Just because we look alike and our first language is English, they spout this xenophobia. It reminds me of the things people say about gays when they aren't aware the person they're speaking to is gay.
Because people rarely know these things unless they've dealt with them personally, here are a few important facts:
1) Immigrating even to a relatively welcoming country like Canada is a long, hard, expensive process. Laws change all the time and then you have to start over. In fact, under current regulations, with the education and experience I had in 2000, I would probably not be allowed in myself.
2) Some of the United States, and some cities, have started to recognize same-sex relationships and even marriages. Unfortunately, this does not help anyone whose partner is not American. Immigration law is federal and the federal government is not particularly keen on either gays or immigrants right now.
3) A good organization working to change these laws is Immigration Equality.
Reading: Fun Home by Alison Bechdel