Katharine,
Dirt left on the dishes is just broken down food particles baked on hard during the drying cycle - worse on the upper shelf.
Rinse Aid is designed to reduce the surface tension of the rinsing water to allow it to drain off before the drying cycle. If the Rinse Aid is poor quality or insufficient in quantity the water droplets, with small food particles in them, remain on the croockery to be baked on hard during drying.
Run a cleaning tablet through the machine - use best quality rinse aid - clean off the worst of the food remnants before loading into the machine & all will be well providing you use salt and decent detergent.
See http://en.wikipedia.org/wiki/Dishwasher#Rinse_aid
Good luck...
Peccavi
June 2009