One minor problem in the recursive part of the function
The where clause 'holidayDate=@nextBusDay' will not evaluate
correctly if the @NextbusDay has a time part.
Need to change this to normalize the time part for both dates to 00:00:00 before comparing.
I loved the article though.Good work Rob.