it could be a faulty road speed sensor..... i am not sure if your car is fitted with one of these though. check at the back of the gearbox where the speedo pugs in. the sensor (if you have one) is in between the speedo cable and the gearbox.
Try cleaning the crud off of it and checking the condition of the wires to it