I believe that the domain name is only important if the keyphrase is uncontested. Domain names are for type-ins and branding, and therefore mixed keywords are a waste of time, keyphrases are the names to have. Non .com names will always lose traffic to the .com - I know because I harvest that traffic.

Similarly hyphenated names will lose traffic to the non-hyphen.