You can do the custom white balance with either white or gray card. But if you are putting a reference card into a shot (when light changes), then use Gray not White as the white card will not work nearly as well for reference purposes.
Here are two examples of a Color chart with the Custom WB made with a while card for one, and a gray card for the other. As you can see there is no difference.
The best reference card to put in a shot is one with white/gray/black. Here is an example of one of these:
If you have one of these, then you can zero in exactly for white balance in post processing using curves and the three eyedroppers.
But for the 20D, you should be shooting RAW. If you shoot RAW, then you'll be able to change the WB anyway you want after the fact. If you shoot JPG only, then you are going to be locked in to your White Balance choice to a large degree. I shoot everything RAW and I am always able to get the precise results I want. But I still set the Custom WB and zero in my exposures using a Black/Gray/White card and the cameras histogram.