Don't use right joins - they suck and make your SQL difficult to read.
In Access you could use a derived table for this (or sub selects, but I prefer the derived table). More simple SQL (but less efficient to run) is to use a condition in your select instead of the where clause, e.g.
SELECT ProductName, NZ(COUNT(Iif(orderdate BETWEEN [Date Start] AND [Date End], "yay for pootle", NULL)), 0) AS ProductCount
FROM Products LEFT OUTER JOIN Orders ON ..... blah blah