Using the odometer to calculate the is the easiest way to determine where the problem. The odometer is gear drive and the speedo is magnetic drive.
If the problem is the trans drive gear (most possible) the error will be a ratio.
Drive some miles 10 is best, 2 is about minimum, checking the mile markers. Then compute the error. Lets sau it's 10% low, then when the steedometer is reading 20mph you will be going 22, 60 indicated will be 66 actual. Change the gear accordingly or add a ratio adapter. Moving the needle can't help this.
If the mileage check is a perfect 1:1 then move the needle.