Have you calibrated both apps independently to the Zwift Pod? The apps handle calibration differently. If you’re calibrated on Zwift, that calibration doesn’t transfer over to to MSP. You may need to calibrate on MSP to match more closely.
Distance discrepancies between the two can vary since they work differently. Zwift uses real-time data, while Milestone Pod app uses stored data.
Lastly - I’m not sure if you had heard, but the Milestone app has reached its end of life. There’s a thread that discusses Zwift’s business reasons for discontinuing development of this app.