I recently reinforced the virtues of apps that control their own integrity, and we are all aware that Mojave and Catalina are introducing tougher checks on apps signatures. One of the coincidences of this is the questionable use of some users who customize apps in different ways: Changing the contents of the app bundles can cause them to fail at signature controls and stop them.
This article explains how to safely change the icon displayed by an app without breaking the signature, although it has not yet gone through full "first run" controls with its quarantine flag set.
What you can't do is manipulate the app's icons in the resource folder. Although the resource folder is excluded from any signature controls, it is checked at first and now on other occasions. Change something in there, and the app is at significant risk of missing extended signature control, and as a result, may stop launching.
The "official" way to change an apps icon uses Finderens Get Info dialog. Click the icon in the upper left to select it and you can paste another icon in place.
To use a modified version of the existing app icon, perhaps with a version number superimposed, copy the original icon into a suitable editor like GraphicConverter at Using PNG format, change it to your liking and make sure it uses a single layer. If you have added parent text, you may need to save it as a PNG and restore that file or the text may be omitted.
Select the entire modified icon with transparent background, copy and paste it into the dialog box Get info for the app.
What happens then is quite brilliant. Instead of Finder changing the icons in ap p package, a new file named
Icon? is created at the top level of the stack, along with the Content folder. That file contains the custom icon, but not as data, which can destroy the signature, but as a traditional resource fork, an extended attribute of the type
com.apple.ResourceFork as shown in xattred.