When you included the column from table2 in the WHERE clause, you converted your OUTER JOIN into an INNER JOIN.
This articles explains what happened: http://www.sqlservercentral.com/articles/T-SQL/93039/
And here's an example of how to mantain it as an OUTER JOIN.
SELECT t1.*,t2.dueDate
FROM Table1 t1
LEFT JOIN Table2 t2 ON t1.ID = t2.ID
AND t2.dueDate='2014-01-02'