Eu mesmo encontrei o soliton. Parece que meu código tentou executar a operação de cópia na pasta de trabalho pessoal em vez de executá-lo no ativo. Esta é a solução:
Private Sub copySheet()
ActiveWorkbook.Sheets(1).Copy _
After:=ActiveWorkbook.Sheets(ActiveWorkbook.Sheets.Count)
Sheets(1).Activate
ActiveWorkbook.Sheets(1).Name = "X1"
ActiveWorkbook.Sheets(2).Name = "X2"
End Sub