Well, a few things to think about:
1. No matter which way you look at the NV30's performance, it is lower in current synthetic PS 2.0 benchmarks than it should be compared to the Radeon 9700 Pro. I think this can easily be considered due to lack of optimization, and I'm hoping that that will disappear by the time the cards are available. Said another way, I wouldn't draw any conclusions on the NV30's shader performance just yet. The results are definitely anomalous right now.
2. Multipass performance really does depend on the algorithm. One thing that you have to keep in mind is that sometimes data will need to be recalculated each pass. So, given the right algorithm, the simple fact that the NV30 won't need to do multipass could lead to tremendous speed improvements. Other algorithms may perform about the same.
3. Is there additional overhead in running a long shader on the NV30? With optimized drivers, this overhead probably won't amount to anything, but if, for example, the entire program doesn't fit in on-chip cache, then unoptimized scheduling may end up stalling the pipelines frequently in a long, complex program. While logic would dictate that running a long shader instead of going multipass would, at worst, perform the same, if such an overhead exists, then a long shader may be slower than some multipass algorithms.
I guess what it all comes down to is a long program on the NV30 should be as fast or faster than a comparable multipass algorithm on the R300. Whether this pans out in reality will remain to be seen. I think most of this depends on how much more shader performance nVidia can get out of driver improvements (which is, obviously, heavily dependent upon how much computational power there is in the NV30 core...).