Can I create non-default EntityReferenceSelection?
Finally, after some investigation, two required items never documented:

unlike the core EntityReferenceSelection plugins that, for some reason, get away without it, you have to provide

deriver = &quot;Drupal\Core\Entity\Plugin\Derivative\DefaultSelectionDeriver&quot;

in the plugin annotation.

It might be completely unnecessary in your case but you have to make sure your custom entity type has an entity_key named label. If it doesn't, core will use PhpSelector instead of your selector, forcedly.