Just to make sure I have understood you correctly - that what you are trying to do is to add items to a list within a saved game. The only logical reason I can think for doing this is that you are updating the game and want to allow users access to new items - or have I missed something ?
Irrespective of that looking at your code I personally wouldn't recommend the approach of detaching the game scripts, that seems to me to be a tad risky with not obvious benefit.
I don't believe the item file is a script file as such, it's more akin to data, so attaching/detaching it is probably not going to help.
You may have done this already but if I was trying to focus down on the problem I would be tempted to code something like this.
on "event" // some trigger event
var ValidInput = false;
; // where NewItems.items is your definition file containing the new items you wish to add
When you have initiated the event simply step through the code keeping an eye on the ValidInput var - if it changes to true then your Items file has merged, if not then there is a problem,and I guess then go look at the definition file.
NB I have just tested this in the demo game and it works perfectly well