CAML Query DateTime comparison returning Zero results

We can write lambda expression instead of CAML query to compare DateTime with SharePoint list items retrieval.
  1. SPList taskList;  
  2. //TaskStartDate - sharepoint list column   
  3. var namesSPListItem = taskList.Items.Cast < SPListItem > ()  
  4.     .Where(itm = > Convert.ToDateTime(itm["Task Start Date"]).ToShortDateString() == TaskStartDate.ToShortDateString() && Convert.ToString(itm["Task Name"]) == TaskName && Convert.ToString(itm["Project Name"]) == ProjectName)  
  5.     .Count();