Does that scenario seem safe? Could there be any problems, perhaps minor save bloat, with this?
Removing the base item doesn't seem right. You must remove the version of the base item that has been added to the inventory; this one being defined in your script.