I probably should have mentioned I tried all three step events already. The question is, how do I draw it to the surface AFTER the view is moved? I realize that the view is the problem, but it just always seems to have an offset, regardless of what I do. It still exists even if I do all of the drawing to surfaces and drawing of surface in the object the view follows.
Draw to the surfaces after the view has moved, otherwise they'll be drawn with an offset equal to the speed of the view
One way to do so, assuming you move the view in step event, is to draw to the surface in end step (as Nocturne said)
Edit: Just remembered I actually had to solve this problem in a different game I made. I figured it out regardless.