Ive done this but what i recommend is that you do a test run first,
Install sharepoint 2 on another machine along with whatever version of SQL you are using, get it setup and running and upgrade the default IIS site with sharepoint.
Then restore a copy of your sharepoint content database to this server, make sure you have an account with appropriate access to the database. Open sharepoint admin and remove the current content database, then add the content database you just restored (make sure you tick that your adding an existing database). viola you now have a functional copy of your sharepoint 2 setup to work with.
From there on in install sharepoint 3. Now you have 2 options gradual or immediate upgrade.
I tried gradual and wasnt impressed with the result, the method for upgrading is using the web interface and on a 50gb content database it would time out almost consistently (after around 2hr), you have to do an entire top level site at a time... you cant do your subsites bit by bit and gradual is only if you have several top level sites as you can do them one by one. If you do use gradual then look into using the command line version of the upgrade process believe me when i say its much more reliable! Gradual will also create 2 top level sites and sites not upgraded will autoforward to the old versiom attaching a sharepoint 2 database to the sharepoint 3 site will automatically upgrade it btw
If you only have 1 top level site then what i recommend is going through the immediate upgrade process, i believe this uses the more reliable command line upgrade and you less likely to waste your time.
IMO the most important thing about upgrading to sharepoint 3 is having your users try it and play with it, once you have it running on your test upgrade system demo it to a few people (this includes yourself, lots of new options to play with for the person administering), end users get used to something and hate it when you change things, they might love it after a few weeks compared to the old version but you will have a backlash at first if you spring it on them. the new features are great but you need to check all the sites still function correctly, document any permission changes you need (permissions actually work properly in sharepoint 3, no automatic backdoor for domain admins, only full access account by default is the service account if i remember rightly) and by far the thing you need to find out most is just how long the upgrade process takes on your database, dont wander idly into it to find out your content upgrade will take 9 hours and your sharepoint is out for an entire day
Lastly, when you do this on your live system make sure you make a backup
Hope this is helpful