Bene, mi sono reso conto che il motivo per cui questo stava fallendo era a causa di un errore da parte mia. La maggior parte dei nostri progetti avrà più voci di veicoli, ma per caso quello con cui stavo testando ne aveva solo uno nell'XML, quindi la deserializzazione lo ha convertito in un Document, non in un BsonArray.
Il codice sopra funzionerà, assumendo il VehicleEntry
field è infatti di tipo BsonArray, il driver lo mapperà a un oggetto List.