Yes, the z-axis steppers were moving, but weren't keeping the nozzle at a constant distance from the bed. I've always been rather impressed with the performance of the manual mesh bed leveling, so I expected this to work just as well. Maybe it's just a bug? When you get a chance, could you confirm yours is compensating correctly? I've been trying to find a good explanation of how each method differs. I thought UBL, ABL_bilinear, and MBL all could correct for more than just a tilted bed... and I think that's still the case. But UBL and MBL are mesh based, where ABL_bilinear is grid based?? In my start script, I just followed G28 with a G29. That way I know it's active during my print. I ran G29 multiple times to make sure the results were consistent, and they were. I also used M48 on the stock IR sensor and it was very consistent on my 800grit sanded PEI bed.
Try putting this in your script before it starts the actual print "M420 S1" ; see if that makes a difference. I am at the fringes of what I understand about what the firmware needs, but this seemed to make a difference for me (I am not sure that it is correct, but it does take very small correcting steps as the printhead moves.