Hi Mike,
You are correct for the most part.
There are a few things you need to consider when going this route. The first and most important is that the BillAddressState needs to stay on the screen. It can be hidden, but this field is linked to QB and your dropdown won't be. That new dropdown box will not exist in QB. You should set the Provice dropdwon to update the BillAddressState field, so that when Method saves, your Province dropdown value (which was passed to the BillAddressState field) is passed to QB in the appropriate field.
Another point to consider is that if a change is made in QB, that change won't be reflected in the dropdown box in Method. Quickbooks will have no knowledge of this new field, and as such won't update it. There is no way around this. Also, it would probably be best to use abbreviated province names.
As far as design, consider making a new table with the abbreviated province names, and linking that table to a new field in the customer table.
I hope this all makes sense.
- Adam