The command Do[Print[i], {i, 1, 3}] does what you expect: creates 3 output lines of 1, 2 and 3, in that order.
If one merges these output cells, then evaluates the original Do command, the output is now 3, then 2, then 1. When one deletes the output cells, the regular behavior returns.
It isn't that the Do loop is running backwards. When one does "the same thing" with
temp = {} Do[AppendTo[temp, i]; Print[i], {i, 1, 3}]; temp the order of the Print command is reversed, but the contents of temp are still {1, 2, 3}, not {3, 2, 1}.
Why does this happen? Does Print write to a queue that is sometimes dumped in reverse order?
I am running Mathematica 11.0.0 on Windows 10
Do[Pause[1]; Print[i], {i, 1, 3}]. $\endgroup$