I have no idea how they get away with it, but last.fm is a site that provides streaming music based on your personal preferences. I couldn't tell you how many kilobits per second the stream is, but it is definitely good enough.
You can become a member, download some software and have it track what songs you play via iTunes to give the database some information about what you're currently into, to customise it a little better.
However, I just tried typing a few artists' names into the main page. Entering "Joni Mitchell" played songs by Ani Difranco, Van Morrison, David Bowie, Cat Power and Rufus Wainwright.
While none of those are incredibly close to Joni Mitchell in style, they're all artists I like and the particular songs were quite well chosen.
Another example: "Philip Glass" turned up some Steve Reich, Kronos Quartet, Arvo Pärt, Michael Nyman and Erik Satie.
I can see myself using this site quite a lot for free (apart from bandwidth) background music!