For logical replication there is no need to implement this, but others are using the pgoutput plugin for Change Data Capture. The reason they are using pgoutput is because it is guaranteed to be available as it is in core postgres.
Implementing LogicalDecodeMessageCB provides some synchronization facility that is not easily replicated.