Hmm, I think it may be wise to try and snap up a GameCube controller early, as I'm not sure if they are still being made? As I think the longer you wait, the harder it may be to find one.
I'm not sure if your concerned with what I have to say below...
Alternately, I think you could just get a Classic Controller, but I don't think you can play GameCube games with one. So, if you want to play GameCube games, then I advise you to get a GameCube controller. But, I think it's still not confirmed wether you can play Sega Genesis and TurboGrafx-16 games with the GameCube controller.