Desgraciadamente al ser procedural, el problema con el que te encontraste es el siguiente
Código:
'incluir.asp
Dim variable
'pagina.asp
Dim variable
<!--#include file = "variable"-->
Si esto lo interpretamos tal y como lo ve nuestro IIS:
Código:
Dim variable
Dim variable
Estamos redefiniedo la variable, lo cual no es válido, por eso el error, lo que explica Myakire es totalmente correcto acerca del server.execute, que crea una instancia nueva de un objeto, en tanto que server.transfer solamente pasa el foco de la aplicación a otro archivo en el servidor, el resultado de esto no será visible en el cliente (concretamente la URL), pero todos los objetos estarán disponibles en el archivo al que transferiste (Response, Request, etc).
Ahora, el problema que tuviste podría ser solventado si divides tu código en pequeñas subrutinas y funciones, de manera tal que no necesites definir variables que interfieran con otras, sino que las tengas "contenidas" dentro de su procedimiento correspondiente.
Saludos