This happens a lot with pistons. It happens because they are in different chunks. I don't know the reason why they behave this way, maybe different chunks have a different activation order.
This is easily avoidable, however. A chunk will always have the same activation order for all pistons, even if you save and quit. It is quite unfortunate if you need the piston to be in a specific chunk but that's just how it is.
An examples of this happening is a double piston extender using a similar trick to the one you used here. Another is a zero-tick piston extender (piston extender which skips the 1 redstone tick delay that pistons have when retracting) which requires two pistons to work, depending on the chunk the zero-tick piston extender will have different configurations.