Followup - I'm starting to assume that I can't place merge fields as record contents - is that accurate?
Thinking that the better way to do this would be to instead insert an actual calculation into my "Shortcut" field and then use the Evaluate function to calculate and insert the text?
This seems to be working properly now.
You say it's working, but haven't said what you did to "fix" it.
Merge Fields are meant for text-as-layout-objects, not for inside fields contents. However many people may use them as "place holders" and calculated replacement of them with the real data as needed. The "<<" & ">>" patterns, along with the 'name' within can be used in the Substitute() function, for example. But that's all calculated and not automatically filled as when the merge field is on a layout part.
The same is true for Merge Variables