As described in the "QP Reference Manual" (generated from source code by Doxygen): "The returned pool margin is the minimal number of free blocks encountered in the given pool since system startup." This means that, by design, the pool margin can only go down. (This is the low-watermark of the pool.)
If you want to track the current number of free blocks in the pool, you need to monitor the QMPool.m_nFree data member. You need to use a debugger, because currently there is no API to access this member.