We have an application that is used by multiple clients but has a shared codebase. The way this works is that client's web site gets a virtual directory set up to the application's web root in IIS, so they'd each get www.mycompany.com/neatApp/ where /neatApp is a single directory that issues various calls to CFCs for page layouts. Within the CFC that handles the page layout is a single <cfinclude> who 'template' argument is passed from the file in /neatApp, and which exists in the 'codebase' directory - the real guts of the app. The /codebase directory is not a virtual directory under IIS but is set up as a Coldfusion mapping (i.e. /codebase points to c:\blahblahblah\codebase\).
<cfinclude> properly looks for a coldfusion mapping and this has served us well for a while.
We're now updating parts of the app to use some of the swanky new CF8 pieces, and the biggest problem we've encountered so far is that, when using things like <cflayout> with a 'source' attribute, or a <cfdiv>, they seem to disregard the CF server mappings - while <cfinclude> will find a file located in /codebase/someDirectory/myfile.cfm, a form action of that same URL in a cflayout tab or in a cfdiv will come up with a file not found: /codebase/someDirectory/myfile.cfm.
I'm sure this must be covered somewhere but none of the search terms I could divine seemed to illuminate the subject any. We've got things working just by putting the code we need in the IIS-mapped /neatApp virtual directory, but that sort of defeats the purpose of having all the secure code in a different place that isn't exposed to the public web.