The IOC has made its decision, despite Russia's anti-gay stance. Vancouver shouldn't host the games because they did so in 2010. China hosted the 2008 Olympics despite its deplorable record on human rights. Russia will do the same for the 2014 Winter Olympics. Russia is also hosting the 2018 FIFA World Cup in spite of its human rights track record. If countries boycott Russia's Olympics, they should have done so in 2008. Countries should also boycott Russia in 2018 for the World Cup at that rate.
I do not think the Sochi Olympics should be moved to Vancouver. Russia has their laws and even though most of the world may not agree with them, they are laws. Politics should never come into play for the Olympics, it is about the athletes. If gay athletes do not want to compete in Russia, they are not forced to go. For the fans who do not agree with Russia's anti-gay laws they can choose not to go.