AFAIK, there's no way to force this; indeed, SOAP::WSDL::Deserializer::Hash explicitly states that this is the behavior.
When I've encountered this issue, I've done something like the following:
This ensures I always have an arrayref with which to work.