In my experience hardly any countries use state / provinces, for example here in the UK the equivalent would be our counties but these are no longer required as part of our billing/postal address.
One way to get around this would be to use a text box rather than a drop down list and populate it via AJAX for US/Canadian States so that you get the correct 2 letter code but enable customers form the rest of the world to enter their equivalent as needed.
I have produced a solution along these line for a Australian client (Australia uses a state system) that you can see here www.hiddenvalleyhandcrafts.com.au/ by putting something in the basket and checking out.
Another alternative would be to have a non usa entry in the drop down list which could trigger a text box to appear (proof of concept here index.html)
The trick is not to require customers to select a US state unless they are in the US :-)