Most users care more about contact discovery than privacy so it makes sense for them to implement it and unlike Signal, it uses #xmpp so everyone has the freedom to use any other app that doesn’t require a phone number and you are still able communicate with everyone on Prav.
It is easy to cook up your own IM protocol, but for interoperability between providers (which is the whole point of using XMPP or Matrix in the first place!) we need to agree on a protocol. The way we agree on protocols is standardization. XMPP is the proper IETF internet standard for instant messaging while Matrix is effectively just another product by some startup with lots of venture capital funding for shiny clients and marketing.
Also, XMPP servers and clients are also a lot less bloated.