I thought this was ancient history but it seems the debate still rages.
The X-box and Gamecube were very similar in power. On a technical level, the Gamecube was capable of features the X-box was not but had some annoying architecture based problems as well as the smaller storage space due to the small discs. X-box on the other hand was effectively a PC and had the advantage of DirectX. PC developers flocked to the system due to the ease of porting and the familiar, easy-to-code architecture. This meant the X-box had numerous games that looked amazing for the gen (in particular Halo 2 which was the first game to use normal mapping) and would have been incredibly difficult and time consuming to reproduce on Gamecube and PS2 (with many features being removed from these versions of games).
If you look at Gamecube exclusives or titles where some effort was put in, you can see the Cube was possible of some amazing feats but was held back by the limitations I mentioned above. Developers simply weren't willing to make the effort and from a business perspective it wouldn't make sense to put in the extra effort for a poor selling console.
Personally I see it as GC+Xbox>PS2>Dreamcast