I'm not sure if this is really a bug, but when the Y axis is up, the vehicle demo uses
btVector3 wheelAxleCS(-1,0,0);
If I understand correctly this should point in the right direction, but according to all the documentation bullet uses a right handed coordinate system, so this would be mirrored.
It seems to me that bullet uses a left-handed coordinate system just for the btRaycastVehicle wheels rotation, since if I use a positive value my wheels rotate in the opposite direction when moving forward, yet if I invert this value my rendered meshes appear inverted too.