In my opinion the undergraduate years are good for two things: 1) Developing your abilities to do mathematics with your bare hands and 2) exploring as many different topics (in or out of math) as possible. For the former, make sure you don't shortchange all the standard core courses in analysis, algebra, topology. I would recommend combinatorics and probability, too. In principle, you should be able to learn a lot of this on your own by doing all the problems in a book, but it is also rather important to get feedback from an instructor, both to check your work and to make sure you are presenting your work clearly. Beyond that, I would advise avoiding taking too many specialized graduate math courses. Instead, take all those non-math courses you are interested in. You are going to be totally immersed in math while you're a graduate student, so your undergraduate years are your last chance to explore non-math topics.
ADDED (and inspired by Willie's comment below): And, most importantly, don't worry about any of this too much. It's not as if you have only one chance to do it right. Even if you do it all wrong, you'll learn a lot from your mistakes. It can be argued that those of us who tried too hard to plan carefully and avoid mistakes missed something important.