Strange. No. The IR memory is not technically "cleared" when repurposed, EXCEPT for things like Strings which have a critical .MaxLen member. Not sure how the .Length member is "initialized".
Look at RecipeRecord_0.MaxLen in Data View. Hit Ctrl+Enter to see RecipeRecord_1.MaxLen, Ctrl+Enter again for 2, again for 3, again for 4, etc. making sure you see "20" for the value (that's what appears to be your MaxLength).
Do the same with the .Length member. Make sure those are all between 0 and 20.
Going from Pgm->Run will initialize the Data Blocks (clearing non-retentive areas for one).
Let us know what you see after doing these things.