Dein insert und rename ersetzt immer nur das erste Vorkommen des gesuchen Strings/Zeichens.
Für alle Vorkommen müßtest du es in einer Schleife solange wiederholen, bis der String/das Zeichen nicht mehr vorkommt.
Aber zum Ersetzen würde ich dir
StringReplace empfehlen.
Dann macht es sich besser erstmal alle (nötigen) Dateien in eine Liste aufzunehmen und anzuzeigen, so daß man da nochmal schnell drüberschauen und eventuell noch was ändern kann, bevor umbenannt wird.
PS: du läßt doch dein Programm erstmal nur über ein Testverzeichnis laufen, bzw. hast dir von den Dateien ein Backup gemacht?