The OBD-II spec requires a connector within a certain distance of the steering wheel. If you haven't got one can you be sure it's OBD-II?
If it is OBD-II then you could just add a connector and use one of the devices that AdderD mentioned, although I have no experience with them. You're going to have to connect to the bus anyway, right?
Failing that then I see no reason why you couldn't use the XBee shield with the CAN-Bus shield. The CAN-Bus uses SPI to communicate with the Arduino, which can then send any data recieved out via the UART to the XBee. You'd probably have to go with an XBee with a chip antenna as the CAN-Bus shield would have to go at the top because of its DB9 plug/socket.