I had a similar problem. After much expiramentation, I ended up using
GetCurrentTemplatePath(). It's ugly but I blame Macromedia. :)

<Cfset StoryDirectory =#getdirectoryfrompath(getcurrenttemplatepath())# &
"..\..\Stories\">

<!--- Save Story File --->
<cfset fileName=#StoryDirectory# & #StoryName# & ".txt">

<cffile action = "write"
nameconflict="makeunique"
file = #filename#
mode="644"
output = "#form.story#">
</cffile>

:beer;