I always assumed since every node holds its own mempool there is no guarentee the total 300mb for each node will be the same and this overflow of 300mb is a result of that. But don’t know for sure and not fact checked this is just the explanation that come to my mind when looking to that.
Discussion
This makes sense. 300mb is a default option but you don’t have to adhere to that.