en el copy file pon true para que de error si el archivo existe y pase a borrarlo sino creo que el if es inutil pero vamos que hablo de memoria desde que hice mis librerias que no uso esas cosas
.
Y con ese codigo ningún acceso directo se te joderá... busca en otro lao el problema
PD: no creo que te arregle nada pero intenta no cpiar el exe existente y mira a ver que pasa esta vez xk creo que windows busca los exe de los accesos directos que pierde