My family moved from Pretoria, South Africa to the Toronto, Canada area when I was young. Toronto is a very multicultural city and I've met many other ex-pat South Africans here (of many different ethnic and racial backgrounds). My parents had no trouble meeting other South Africans when we first arrived (even ended up next door to a few!).
Of course you'll want to consider Canada's ever-changing Immigration policies and the fact that we have a public healthcare system here (from what I hear, Doctor's are treated rather well, especially specialists) but I would highly recommend it.
Toronto specifically is an extremely open-minded and diverse place. Your son should have no trouble finding community. There are two very different geographic gay communities, one in the East End / Downtown area and one in the West End. Toronto is also home to a very, very large annual Gay Pride parade and celebration.
Many people who live in the Toronto area buy property in one of the many towns and cities that make up the GTA (Greater Toronto Area) and commute into the city for work or school. If you're looking for countryside properties, there are tons of areas to explore anywhere from an hour north of the city to 8 hours depending on how remote you want to get :)