I'd probably classify myself as a "semi-professionally trained autodidact" in that I did not pursue a career in what I majored in: designing microchips. Part of that curriculum was CS courses but only a few up in the 3xx/4xx level. Also I don't develop in my day job, I administer networking equipment. So for my hobbyist open-source work, I have to learn on my own. I was taught programming, but not things like lambda calculus, advanced OO, or design patterns; was taught probability, logic and discrete math but nothing about portability, version control systems, or modern communications protocols. I was taught some level of algorithms, but nothing advanced in the area of complexity analysis.
I think Muhan hit the nail on the head when it comes to where lack of formal training can hurt: you can paint yourself into corners which you should really have known were there, and this is especially true about complexity analysis and scaling. Jan also points out that if you never got your elbows dirty, you won't know how your low libraries actually work, so instead of improving low level code and protocols when you should you'll make sloppy workarounds on the wrong side of an abstraction layer. Jos is part right in that it is always frustrating to spend a lot of time learning how "old school" things worked and then find most of those things are relatively obsolete when you get out into the workplace, but you eventually realize that ideas get recycled all the time. Often that sparkly new language or framework is just an independent re-discovering of old principles the culture has "forgotten" over time (even the very idea that old ideas so often get picked up, recycled, and presented as new is in a decades-old and RFC, though I've lost the link :-)
Also if your education is in a setting that promotes teamwork, formal training helps hugely in learning to cooperate under stress -- a lot of people learn how to cooperate at play through sports or team-oriented gaming, but not at work trudging through difficult, nebulous problems and taking responsibility.