I just changed this code:
if (File.Exists(outFile)) {
if (!this.AllowOverwrite) {
return; // not allowed to update
}
}
To this:
if ( File.Exists( outFile ) && ! this.IsOverwriteAllowed ) { return; }
Thought I'd share my mad technique ( and general awesomeness ) with The Internet.