As the other comment says, you can make changes in the code to handle this. Another option is to handle this via shipping methods. You can create different shipping profiles for your products, shipping zone and add the rates according to your requirement. For example, if you have a product A, and you don't want customers in Canada to buy that, you can create a shipping profile for product A, create a shipping zone as Canada and don't add any rates for this zone. By doing this, when a customer from Canada try to buy product A, there won't be any shipping methods displayed at checkout and a message will appear saying; "We don't offer shipping to Canada". Although this is not the exact way to handle this situation, I hope it might help you.