OK przez proces eliminacji w końcu odkryłem problem. Nie wiem dlaczego tak się dzieje, ale musi to być błąd w sterowniku MySQL ODBC.
Pola liczb całkowitych z atrybutem UNSIGNED powodują błąd. Usunięcie tego atrybutu powoduje, że wartość pola zostanie zwrócona jako standardowy typ Integer. Najwyraźniej sterownik ODBC nie obsługuje poprawnie konwersji typu unsigned int na typ vbscript Integer i zamiast tego zwraca wskaźnik do Long.
Zauważyłem również ten problem w polach tinyint(1), których używałem jako wartości logicznych. Zmiana typu danych z tinyint(1) na int(11) [domyślnie] również wyeliminowała ten błąd.
Mam nadzieję, że to pomoże komuś innemu. FYI Zamieściłem również ten problem na forum MySQL ODBC Driver, ale nikt nie zadał sobie trudu, aby odpowiedzieć.