Can anyone conjure from this code why the ItemsSource line would be getting a
Items collection must be empty before using
Your ItemsControl has a Button in it. Since there's already an item in the ItemsControl, it's not letting you set its ItemsSource property.
Move the Button declaration down under the closing tag.