In your sample, you are getting the ItemsSource as an IList of Player. Then adding to the list.
In my code, the binding the button click to a delegateCommand on my viewmodel, that adds a new items to the collection. My VM contains a property that is an EF entity (Complaint). This entity has a child collection (EntityCollection) Photos that I'm binding the carousel to.
If I put a breakpoint in my code after adding a new item to the bound collection, I can see that the Items Collection of the carousel has only has 4 items and the ItemsSource collection has 5 items. So it's not updating the carousel when I add a new item to the bound collection.
The selected item is also bound and I was hoping that would sync them up and show the newly added item, but no such luck. The only way I can get it to work is to do this:
var items = PhotosCarousel.Items;
(items.Count > 0)