Remember two facts:
Canada accepts more refugees than any other countries in the world every year. What Canada gives to them are much more than the government can get from them.
Canada is one of the few countries that can keep high living quality solely base on its resources. It does not have to have the immigrants to support everything.
What I am saying here is that we should appreciate that Canada gives us this opportinity, while nobody else is willing to give us. Don't always calculate how much you give others and how much you get from them. Can you imaging that US government will give somebody like Pan $500-$800 a month for nothing? Absolutely not.
One thing I can tell you is that it is much easier for the government to close the door than changing any law. We don't want to see the door being closed.