The circuit is a little more sutle (or complex if you like) then as you described:
The USBVCC supplies 5V. The FTDI chip makes 3.3V out of that (called VCC30 for some reason, I would think VCC33.....)
The problem with that analysis is that the FTDI cannot create 3.3vdc until the FTDI itself has 5.0vdc applied to it, and that doesn't come directly from the USBVCC but rather the boards Vcc 5vdc bus, so there is a chicken and egg problem with that statement.
Rather one has to look at the FET being used as the isolation device between the board's Vcc bus and the USBVCC source. The FET has a 'body diode' that will allow the USBVCC to power the board's Vcc bus (with a small diode voltage drop) so that the FTDI will get powered up and the opamp and it can then do the compare function to see if there is no external DC available it can then fully turn on the FET switch and thus 'shorting out' the internal fet diode and eliminate the voltage drop caused by the diode.
Now that begs the question is how complete is the USB power isolation when there is external DC power applied to the board and the FET is turned off to isolate the USBVCC from the board's Vcc bus, in that there is still the fet body diode to consider? If the USBVCC happens to be a little higher voltage then the on board 5 volt regulator wouldn't there be a possible current path to USBVCC even thought it's suppose to be isolated by the turned off FET?
The whole arduino auto-voltage switching design is in my opinion a somewhat flawed design and takes up more board space that could be used for more useful functional additions. A simple switch or jumper clip would be a better method and in fact is how the very first arduino boards handled USB/external DC power selection.