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;
ValidInput =
LoadItems("items\NewItems.Items",
true);
// 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