I think probably what is happening is that your servo cannot keep up with the Maestro when you set the speed limit to 100. If you further increase the speed limit to 150, for example, does it still turn at the same speed?
As I mentioned before, the Maestro can only determine whether a servo is still moving if the Maesto itself is limiting how fast it can move (in other words, if the Maestro is commanding the servo to move no faster than the servo is capable of moving). Otherwise, if the servo is not keeping up, the Maestro has no way of knowing that, since the standard RC servo interface does not provide a way for the controller to sense the servo’s position.
If that is the case in your setup, you’ll want to experiment with speed limits between 10 and 100 to find a limit that matches or is just under the maximum speed the servo can attain. Once the speed limit is set appropriately, the
wait_for_movement_to_end script should work as expected.