I would say the GPS is correct. Obviously measuring speed through water is difficult.
Its bad enough on land! Car speedos are allowed by law to be upto 10% wrong!
e.g. travelling along the motorway with the speedo reading 70MPH - you could be doing anywhere between 63 and 77 MPH!
In a car as your tires wear the distance arround the circumferance gets less, so the wheel turns more times for the same distance and the speed shown on the speedo will increase.
So you go faster with worn tires
If you have a handheld GPS you can see how acurate your speedo is (My speedo reads 85 when I'm doing 80!) Most say that you are going faster than you are to be on the safe side.
So back to the original thread... I would say that a speedo on a RIB / Speedboat is in MPH because the majority of people using speedboats probably refer to speed in MPH and don't know what a knot is!
Bigger boats that are used for navigation would normaly have speedos measuring knots.