FWIW, I have had a little bit of investigation about speedo drives, because I changed the wheel in one of my spanish-made bikes, and wanted to use a Yamaha speedo.
Mi findings -though they can hardly be extrapolated to every bike in the world- revealed that a 1974 CB350K4, a 1982 Yamaha XS400, and a 2002 Suzuki GSX-R1000 all have a drive that rotates 2.75 turns per turn of the wheel.
As you have been pointed out, rim size doesn't matter much, but tire size do. In Spain you can swap tires as long as the diameter differences doesn't exceed 3% -up or down-. With that limit you can't really use many alternatives, but what I have found when looking for alternatives is that most of the tires doesn't get much higher than 6% circunference deviation.
My impression is that, in many occasions, bike manufacturers simply count with that reading error, using the same speedo and drive with different size of tires, or in the worst case they would change the speedo to accomodate such deviation. Then comes the end-of-scale, but that wouldn't account much for the precision of the reading: you can use a 600cc bike speedo and a 250cc bike speedo with the same drive and wheel, and if your bike is travelling at 90 mph, both speedo would read 90, but one will be at full scale while the other will still have way to go.