Typically when you set a value like this ShoppingCartItemInfo.CartItemCustomData.SetValue("Image1", imageId);
you'd need to do something like ShoppingCartItemInfo.Update();
or ShoppingCartItemInfoProvider.SetShoppingCartItemInfo(ShoppingCartItemInfo);
to actually save the value to the object.