You don't have a failure redirect set up for the shipping server behavior, that is why it is letting the order go through when the shipping calculation fails.
I'd run a transaction and then create a blank page with just this code on it:
You can then manually go to this page after viewing the confirm page, or set it up as the shipping failure page for debugging purposes.
When a shipping quote fails we store the information about the failure in the session. This will display that information that we can use to determine why it failed and find a solution from there.