I presume you want all the dates when there was no logged activity by the specified user.
Following solution is based on another answer: SHOW ALL Dates data between two dates; if no row exists for particular date then show zero in all columns
;with d(date) as (
select CAST('20131201' AS datetime)
union all
select date+1
from d
where date < CAST('20131208' AS datetime)
)
select d.date CDate
from d
left join [Log] l
on l.[Date] = d.date AND l.employee_id=2
WHERE l.employee_id IS NULL
order by d.date
OPTION (MAXRECURSION 0)
Sorry, this is for SQL Server not MySQL, I did not see the MySQL tag... Anyway I think this is what you expect and there will be similar solution for MySQL.
EDIT
There seems to be no WITH clause in MySQL :-(. If you are sure you have every day some other log record (other users actions, system events etc.), then the following command could work for you:
SELECT DISTINCT date FROM log l1
WHERE l1.date BETWEEN '2013-12-01' and '2013-12-08'
AND NOT EXISTS(SELECT * FROM log l2 WHERE
l2.date = l1.date AND l2.employee_id=2)
I did not test it, because I have presently no MySQL installed.