decorate your job-functions to skip the special days:
from datetime import date
def not_on(dates):
def noop(): pass
def decor(fn):
if date.today() in dates:
return noop
else:
return fn
return decor
@not_on( ( date(2013, 03, 01), ) )
def job():
print "yeah"
then just schedule your jobs for the regular dates and done. if the job is called on a special day the decorator will just skip execution.
just keep using apscheduler
.