Review my logical model for gaps
Since your plan is to re-use schedules I would recommend a change in your thinking as follows:

a) Each service location can have one or more schedules - called location schedules (basically this is an association between a location, a predefined schedule and other data) 

b) Each location schedule can have a priority (which allows you to create a custom schedule that overrides the default schedule) 

c) Each location schedule has a start date and an end date when its active - which allows you to define a custom schedule which is active for only a specific period of time

d) A schedule has a name and description

e) A schedule has one or more schedule details - day of week, opening time, closing time 

I have included an explanatory data model (MySQL)