routeDistanceText picked one decimal while the raw kilometres were under 10, then rounded them for display, so 9.95 km or more read "10.0 km". It now picks the unit from the rounded tenth, as it already does at the metre/kilometre boundary.