I love hard games, but there's a very fine line between hard and frustrating and pulling it off is difficult. For one, if I'm playing well and don't make many mistakes (how many depends on how far in I am - if I'm almost at the end, zero mistakes may be tolerable or even a good thing), then I expect to advance. For example, if I play really well and then lose because of an unforeseeable event, that's not "hard" - that's just frustrating. It's also closely tied in with fairness. If a game is only hard because the AI cheats (perfect aim, always knows where you are, always outnumbers you, infinite resources, whatever) then that is probably not going to be fun. It can be, depending on the game (eg infinite amounts of enemies are a fun challenge in one game but frustratingly unfair in another), but again, this is difficult to pull off. Repetitive stuff is rarely fun, no matter how hard or easy it is.
What makes hard games fun is the sense of accomplishment when you finally outwit or outplay the game. A constant sense of impending failure is a good thing. Failure is also not a bad thing, as long as you can learn from it and do ever so slightly better next time. Constant failure is not a good thing as it quickly leads to frustration. Anything out of your control is also a bad thing and leads to frustration (example: if I died because I made a mistake, that's fine. If I died because I didn't do exactly what the designer wanted and there's no other way to do it, that's probably not fine, unless it was obvious what I should do). Some games also expect you to die a lot, but dying isn't particularly painful, so its not all that frustrating (ie in VVVVV).
Finally, gamers often (maybe even "usually") make terrible designers, so unless you have proven yourself, designing a fiendishly hard game is going to be a pretty big gamble.
Our goal isn't actually to make a hard game. Our goal is to make a game that suits your skill level, whatever it is.
As for whether we've succeeded, we've tested the game on a few hundred people, both hardcore and casual, and have only had one dissatisfied tester (it was a 5 year old who was playing an early build that was way too hard. Honestly I'm impressed he played it for as long as he did). In particular the good folks at Microsoft and Valve seemed to have a great time playing today. (Hooray!)
What makes hard games fun is the sense of accomplishment when you finally outwit or outplay the game. A constant sense of impending failure is a good thing. Failure is also not a bad thing, as long as you can learn from it and do ever so slightly better next time. Constant failure is not a good thing as it quickly leads to frustration. Anything out of your control is also a bad thing and leads to frustration (example: if I died because I made a mistake, that's fine. If I died because I didn't do exactly what the designer wanted and there's no other way to do it, that's probably not fine, unless it was obvious what I should do). Some games also expect you to die a lot, but dying isn't particularly painful, so its not all that frustrating (ie in VVVVV).
Finally, gamers often (maybe even "usually") make terrible designers, so unless you have proven yourself, designing a fiendishly hard game is going to be a pretty big gamble.