Por padrão, sua agenda é aberta ou fechada?
Se for aberta, você pode simplesmente colocar entradas na sua agenda com uma flag indicando que o horário está bloqueado.
Se for fechada, faz-se ao contrário: cria apenas os horários liberados, e tudo o que não estiver liberado, está bloqueado :-)