Suggestion: glue the VarChar and RTF together inside your TRichEdit then paste the lot in one hit. At least you'll have the Delphi IDE to debug it!
Another point (rereading after posting
) the behaviour sounds like the III.3a is selected in Word when the paste occurs, so it's a replace rather than insert. Any way of checking what's selected in Word immediately before pasting? If it's the III.3a, put something after it and select that for replacement by paste.