O comando SET PRINTER TO tem vários formatos. Um deles é onde você identifica o nome da impressora (se não me engano: SET PRINTER TO NAME "Epson Lx-300"). Ele funciona muito bem com o ??? - já o utilizo faz 5 anos... :-)
O que pode estar acontecendo, no caso dos relatórios, é que seus arquivos podem estar gravando as TAGS da impressora padrão e aí o SET PRINTER é ignorado. Para resolver isto: No VFP8 tem uma opção, para não gravar o ambiente de impressão. Nas versões anteriores, isso deve ser feito na mão.
Para eliminar manualmente as TAGS, abra o arquivo de relatório com o comando USE (Ex: USE Report.FRX) e em seguida BROWSE - Verifique os campos TAG e TAG2 do primeiro registro da tabela... O código compilado (acredito que esteja no TAG2) pode ser totalmente excluído, enquanto o TAG deve ser parcialmente excluído - mantenha orientação do papel, tamanho, etc...