Amazon, ebay, playasia.
save your money and get the white one from amazon. http://www.amazon.com/Official-Nintendo-White-Classic-Gamecube-Controller/dp/B0017KIBAI
what's 16 more dollars?
http://www.amazon.com/Official-Nintendo-White-Classic-Gamecube-Controller/dp/B0017KIBAI
Only way I know of to get one. They're awesome, too. Updated hardware and a 10 foot cord.
EDIT:
Don't buy any of the used controllers from that page. Only the MEDIAHOUSE Akira seller is guaranteed to offer the new white controllers.
You pay for what you get. It's worth it to invest in a good controller manufactured by Nintendo. I would highly recommend this controller off Amazon for $39.99. It's got crazy good reviews.
If that's too much, just hit a local gameshop in town that sell's used controllers. Ask to check out all controllers they have in stock, select one in good condition, make sure the sticks are nice and tight, buttons working well, etc.
Bought it here: http://www.amazon.com/gp/aw/d/B0017KIBAI?pc_redir=1406002480&robot_redir=1
It's not generic. It's also brand new and was shipped in Nintendo branded container.