I have just put 24/11/2008 15:40:00 in A1, 27/11/2008 20:56:00 in A2, and 25/11/2008 in the first cell of the holidays range and then the formula
=(NETWORKDAYS(A1+1,A2-1,holidays))*9
+((WEEKDAY(A1,2)<6)*(NOT(ISNUMBER(MATCH(INT(A1),holidays,0))))*(MIN(MAX(0,--"18:00"-MOD(A1,1)),--"09:00"))*24)
+((WEEKDAY(A2,2)<6)*(NOT(ISNUMBER(MATCH(INT(A2),holidays,0))))*(MIN(MAX(MOD(A2,1)-"09:00",0),--"09:00"))*24)
returns 20.3333, which is correct.
I can't see what else there is to say.
You wouldn't want to call me, I am in the UK.