Similar thing happened to our 03 with CVT. The odometer, trip meter, fuel and temp are all working but the speedometer needle didn't move.
After taking out the corresponding fuse in the footwell, I took the unit out and practically disassembled the speedometer cluster.
The speedometer needle was taken out and the odometer unit was reseated on the board.
Put it back together and the speedometer needle was working again.