Can anyone explain to me why these two pieces of code have the same effect?

What I want is:
text before the image

< the image >

text after the image

But the resulting doc looks like this, in order:

< the image >

text before the image

text after the image

I've tried it the following two ways:

Sample 1 (with collapse ):
docWordObj.Range.InsertAfter vbLf & "text before the image" & vbLf & vbLf
docWordObj.Range.Collapse Direction:=wdCollapseEnd
docWordObj.Range.InlineShapes.AddPicture (imagepath & imageFileName)
docWordObj.Range.Collapse Direction:=wdCollapseEnd
docWordObj.Range.InsertAfter "text after the image" & vbLf & vbLf

Sample 2 (with collapse commented out):
docWordObj.Range.InsertAfter vbLf & "text before the image" & vbLf & vbLf
' docWordObj.Range.Collapse Direction:=wdCollapseEnd
docWordObj.Range.InlineShapes.AddPicture (imagepath & imageFileName)
' docWordObj.Range.Collapse Direction:=wdCollapseEnd
docWordObj.Range.InsertAfter "text after the image" & vbLf & vbLf

I have been staring at this for hours. The whole range thing is killing me. What am I missing?! Thanks in advance!