The 2900XT is slightly behind the 8800 Ultra, mainly due to driver problems. Just like NVIDIA, ATI released the card before the drivers were down pat. And, just like NVIDIA is still doing, ATI is working on and releasing improved drivers as fast as possible.
Actually, the 2900XT has made some huge performance increases from the better drivers that have been released. I'm not sure which category it is, but in one of them (AA, I think) the 8800's trounce the 2900, but the 2900 can equal the 8800 Ultra is other categories.
Note that I am not a fanboy of ATI. I own one so I can Fold with it. I previously owned a 7800GTX. But I'm not one to stand by and watch people heap BS where it is not due. Both cards are great. The 8800 Ultra edges out the 2900XT, but not by enough to justify the price difference. NVIDIA has a several month jump on drivers, and I figure once ATI has had the same amount of time that the 2900 will be even or surpass the Ultra.