I'll mention some names in a moment. First, I want to offer an anecdote about the extent to which brains can be wired differently.
For awhile I was in a business partnership where I wrote code and I worked with a designer. One day a friend told us that she had started a new yoga studio and she wanted to show us her new business card, which was done in the shape of a bookmark - long and narrow. At the top was a photo, at the bottom was a quote from Hinduism. The quote was about acceptance and suffering.
The next day myself and my partner were at restaurant. The service was terrible. I jokingly repeated the quote about acceptance and suffering. My partner gave me a blank look.
"I'm quoting from that business card that we saw yesterday," I said.
"What quote?" she asked.
"The text at the bottom."
"I don't remember it."
"It was under the photo."
She then began describing the photo. She remembered in astonishing detail - camera angle, lighting, pose, shadows. I hardly remembered it at all.
It struck me that I had a good memory for text, whereas my partner had a good visual memory. And I've noticed that is fairly common division among programmers and designers.
The point of this story is that programmers and designers have brains that are wired in very different ways. I assume some of that difference in wiring is essential for any of us to be good at what we do.
Having said all that, I'd say the best designer I've worked with, and who is currently open to accepting free-lance work, is Darren Hoyt: http://www.darrenhoyt.com/