Try this:
Schedule(ScheduleID, StartDate, EndDate)
Day(DayID, ScheduleID, DayName)
Shift(ShiftID,DayID, ShiftName, ShiftStart, ShiftStop)
That will give you considerably more flexibility.
You could also do this:
Schedule(ScheduleID, StartDate, EndDate)
Day(DayID, ScheduleID, DayName)
Shift(ShiftID, ShiftName, ShiftStart, ShiftStop)
DayShift(DayID, ShiftID)
In this way you could have a standard set of shifts and assign them to each day.
If you provided some more detail about how schedules are created, days assigned to them and shifts assigned to days we could narrow down which model or if another model is most suitable.