No, Refresh Counters never makes changes to Piece Id’s.
For each counter in the current game, it finds the matching piece slot in the current module with the same Piece Id and refreshes the counter in the current game with the version that it finds in the module.
If you are just using the Vassal editor to update your module, then you will normally not have a problem with piece Id’s unless you delete a piece slot from the module that is being used in a save game somewhere. When you try and refresh that game, the piece Id in the save game can no longer be found in the module, so that piece cannot be refreshed unless you use the match by name option. The Vassal editor keeps track of the current highest piece Id and all new pieces are given a new unique Id…
Where you run into bigger problems is if you edit the buildfile directly and add, remove or change piece slots and are not very, very careful about maintaining piece Id uniqueness. If you edit in a new piece definition by copying another piece definition, you will create a 2 definitions with the same piece Id. When Vassal loads a module, it has to resolve duplicate piece Id’s and it does this by re-numbering the second definition it finds (Not the second one that was created).
At this point, Your old save games are now toast (wrt the refresher), they include pieces with piece Id’s that now belong to completely unrelated pieces.