[eluser]crikey[/eluser]
I'm not sure exactly how to solve your problem, but some things that might be worth trying:
1. Shouldn't the operator be <= for the $end_date comparison?
2. Are the date formats for the get/post vars the same as what's being stored in the DB?
3. Try converting $start_date and $end_date to int types (I think PHP does this implicitly though)
4. Output the last query and see if it is what you expect it to be (using $this->db->last_query())
Hope that helps
Cheers,
Grant