we created a separate keyword in the calendar, which includes all week days minus the public holidays. You can use the calendar assistant for that where you can add or subtract days from already defined keywords.
And for passing the date to the job. I wouldn't do this. You can use a script function like SYS_DATE in the job to get the current date.
Hope it helps