Going to college is not a binary decision. There are good ways and bad ways to go to college. If you go to college the good way, it can be definitely worth it. It's not required, as many people here can attest to, but that doesn't mean that it's not worth the time and effort.

First, go to a college, not a university. The ideal place is a teaching college that does not focus on research and does not have grad students. They exist, and they're awesome. Ones to check out include the Claremont Colleges (disclosure: I went to HMC), Occidental, and Reed. At a small undergraduate teaching college, you are the focus of the professors, rather than a duty to be discharged with the minimum of distraction from your main focus.

Second, take advantage of that focus. Don't just go to class, do the work, take the test. Talk to the professors. Ask questions. If you don't feel challenged, ask for more advanced work. They'll always take the time if you ask them, and they'll usually be able to work something out for you. And don't just get to the level where you can do the work, get to the level where you deeply understand ("grok") the material. You're not just going to college to get a rubber stamp on a piece of paper, you're going to learn. College is the best environment for that, but it takes effort, and usually going beyond the minimum requirements.

Similarly, talk to other students. Having peers is awesome. Making connections is useful. Having a community to support you will become necessary at one point or another in your life, and college is one of the best places to start building one. Plus, learning to interact with other people in a work-related environment is critical, and this is where you learn (high school is bad at this).

There is a shitload more to learn in college than just programming. That, in itself, is one of the best reasons to go. Maths, communication, writing, public speaking, business, economics, finance, and law are all available and are all valuable. Teamwork, leadership, and responsibility are also things you can learn, even though they're not taught as such, and they're critical to getting anywhere in life.

Now, there's two possibilities. One is that you're hot shit like you think you are. The other is that you're not, and you have no fucking clue. If the latter is true, you will find out very quickly, and be glad you did. If the former is true, then getting value out of college requires a somewhat different path, albeit one you may end up wanting to walk anyways.

If you are good at CS, and still want to get a CS degree, focus your studies on areas that you don't have much experience in. Math, logic, compilers, functional programming, and systems design are areas that autodidacts such as yourself are likely to be weak in. You may not end up using any of the specific skills, but they'll make you a better programmer. Get some practice working on teams as well.

Alternatively, don't get a CS degree (or double-major). Go do something else. You don't need a CS degree to program, and having a wider breadth of knowledge can be extremely useful. The ones most closely related to CS are math, physics, and engineering. Those disciplines are always in high demand, and always have high demand for programming skill. Engineering is a useful perspective to have when coding a large system, and math skills are never wasted (they're obviously not required, but if you have those skills you will always find ways to make use of them).

Alternatively, take something totally unrelated. Business and communications will help if you want to make a startup (if you take relevant classes, not requirements). If you don't major in them, still take a few classes, especially public speaking/presentation classes. You could even take up something like, say, basket weaving, and then you'll be one of the very few good programmers who understands basket-weaving, and your domain knowledge will give your basket-weaving-web-startup the ability to efficiently fill a need no one else even knew existed. I don't even know what a basket weaving startup would be, but that's sort of the point--you could be the first to figure that out.

Finally, college is a place where you can experiment, take risks, and make mistakes. Spend your summers in internships or work-placement programs in various verticals and types of companies, to see if that's what you want to do. Do some research, to find if it's interesting. Take a chemistry or a theater class, maybe you'll find a passion (most people I know, their favorite class was not in their major). Pull all-nighters (studying or Halo) just to find out if you can take it. Get shit-faced drunk. Get a girlfriend (or boyfriend).

And if you don't find it's worth it after two years, drop out and do something else.