Que tal:
Para lograr esto primero tienes que saber cuantos y cuaes dias son festivos.
Despues evaluas tu rango de fecha, empezando por la incial incrementando uno a ella hasta llegar a la final, en el transcurso de que le sumas uno ( relativedate(fecha, 1) ), checas si coicide con los que previamente tienes en una tabla o como datos fijos y si coicide con alguno ese es un dia festivo, de acuerdo a los valores indicados. Asi evaluas cada una de las fechas hasta llegar a fecha final.
Espero te sirva, saludos!