Well that is definitely a shipping problem.
You should be able to use a dummy credit card: 4111111111111111
and reproduce the problem by entering the same shipping information they used. Then use the var_dump() code I provide above to get more information about why it is failing.
It may not like the way they are entering the zip code. Canadian zip codes are different than the US version and it might for instance fail if there are spaces left in the zip code entered?
At least you have narrowed it down to the shipping, but from there you need to reproduce it and add the debug code to really find out the exact problem.