Of course, if it only comes to design in the pure CSS or graphics way that works, but everything that gets to HTML is different.
It's really hard to consider HTML(5) (that one spec, as compared to other modules) a pure markup language any longer. Of course you can use it like that, but than you won't use a lot of features.
So in other words. You have to become both or else you will end up very far from being excellent.
I also think that's even a bit of a problem. I always thought it was good to look at web design and development in separate ways, but in many cases you will end up using the tools that would fit. On the other hand that thing is also kinda true for being an administrator or developer in a way. You can get out much more if you have experience in both fields.
But hey, that's what happens when you work on computer stuff (or computer science if you want, but it often isn't). You have lots of pieces and levels of abstraction working together.
Also isn't it the best to not focus on what you learn, but just have a look what you find interesting? If it's interesting you will focus on it, learn and work quicker and you'll know what to look out for when you need a job.
Oh and people often switch to other languages and learn completely new things, doing completely different things and become excellent. It's not like these things are too distant from each other. So I guess it will work.
Okay, now instead of philosophy an answer to your question.
> Are there any examples of 'generalists' who have built and/or led successful startups?
DuckDuckGo I think. Administrator (FreeBSD and various servers), developer (Perl) and of course the website, which I as a user actually love a lot, even if someone who actually knows about design maybe would disagree.