I have experienced the same issue with my eTrex 32x. When I create a route in BM and send it to the device, the distance on the device is much longer. Frustrating.
Did you ever figure it out?
There's nothing to figure, you get slight discrepancies due to slightly different algorithms between BaseCamp and devices. If it's much longer have a look in BaseCamp at both routes, there will be a difference somewhere.