Paul Cresham posted an elegant solution for this including working out holidays on the fly, albeit for the UK. It did contain a nifty Easter algorithm, as well as tackling the @@DATEFIRST problem. see
http://www.sqlservercentral.com/forums/shwmessage.aspx?forumid=23&messageid=110259
I documented it with an example of how we use it at
http://glossopian.co.uk/pmwiki.php?n=Main.WorkingDays
Dave Jackson