Some corrections:
1. Add the next namespace definition to your Window1.xaml:
xmlns:local="clr-namespace:WpfApplication2"
2. Change DataSource setter:
<sch:NestedPropertySetter
PropertyName="DataStorage.AppointmentStorage.DataSource"
Value="{Binding Path=ListSource, RelativeSource={RelativeSource AncestorType={x:Type local:Window1}}, Mode=TwoWay}"/>
3. Change type of ScheduleUID property from string to Guid.
ps: expiration doesn't affect component functionality.