Short answer: Include them if you truly need them at run-time
All counters are effectively "custom" as the source app creates them as needed.
SQL server, IIS and a whole lot of other Microsoft Services use custom performance counters. Even some of the OS generated ones are missing if you disable the feature that triggers them. They are very useful for doing things like monitoring rates of specific events from outside a large pool of threads.
Permissions issues with creating and managing them is the main issue you can encounter if you are not running as admin, or trying to create/remove them will old-school MSI installers for some reason.
They can have a perf impact at high use and they often end up not being monitored by anything if you leave it up to someone else to create the monitoring.
I often include them, but with a config switch to ignore them completely, and I always code it so a failure on counters is non-fatal and does not waste time retrying frequently.