I just tried to see what Android (Pixel Launcher) does when you move a widget around over icons, and it's somehow much more predictable. In particular, icons would never jump columns if you're dragging a horizontal widget vertically.