Ok so I was wrong on what property gets change that causes the carousel to vanish. I call an update method where the selecteditem of the carousel is passed in as a parameter
foreach (var item in SelectedStyleGroup.OrdProducts)
ModUpdate.Update_Mods_From_Style_Group_Change(SelectedStyleGroup, item, oe, cn);
ModUpdate is a static class that updates child items of the selected item. The items vanish as soon as the call is made, before any code in the class is run. SelectedStyleGroup is the selecteditem.