something missing when calculating Analog values?

You don't need this

 if ((stepperX.distanceToGo() != 0)) {
   
   stepperX.run();  // Move Stepper into position
   
  }

just have

stepperX.run();

and it will automatically stop when it gets to the destination.

And DO NOT use delay() as it prevents stepperX.run() from being called as frequently as it should. Have a look at how millis() is used to manage timing without blocking inSeveral Things at a Time.

And see Using millis() for timing. A beginners guide if you need more explanation.

...R