I've had an arduino running for over 2 weeks and I've been monitoring among other things, the time reported by millis();. It has been logged once a minute by an ntp corrected computer, over the space of 14 days the internal clock had gained 8637 milliseconds, which makes it slightly more accurate than the Casio on my wrist.........
Its a 'real' Italian Duemilanove, can't vouch for cheap clones with Ceramic resonators.
The purpose of the RTC chip is not to be more accurate than the crystal clocked Arduino.
When you turn off or reset your Arduino, the millis counter starts from 0 when you power up again. The RTC takes a battery back up and continues to keep time even with the Arduino off. Your way, how do you go from your millis counter to real time and date without having to set the clock every time you power up?