I think the terms themselves might get misused and semantically have overlap, but from my experience, a distributed system is one where all the machines talk to eachother; a cluster is where the machines may be indepedent (but not always).
Take for example a MMORPG. The most complex and highest end architectures are distributed in a way, that the guy standing next to you and that you are talking to, is actually connected to a different physical server. It works by having each 'simulation server' talking to different services (like a 'chat' service, a 'trade item' service,..) via a service bus. This is what is considered distributed architecture - the machines are working togeather to accomplish the same goal
Conversely, clustered servers might do their own, distinct set of work completely independent of other machines in the cluster. Look at the SETI project for example... or even a simple ASP.NET load balanced cluster... In both cases, these clusters are doing their own independent set of work and not communicating with eachother - they are just serving up different jobs (SETI) or pages (ASP.NET) to their clients..