in reply to How to distribute time using Date::Calc module?

First you have to create a 3D array @holiday with the dates of the holidays set to 1, like so:
### New years day $holiday[2005][1][1] = 1;
Fist add the fixed dates like newyearsday, then add the Easter-depending days using Easter_Sunday($year); and calculate the easter-depending days from there as described on Date::Calc.

Now loop through the days starting at startdate, incement by one and see if the date is not Saturday or Sunday and not a holiday.