What you're hitting is that you (very likely) hit the classic first time problem of integer division.
The SFML setScale() method accepts a floating point value - but if your m_playerHealth and maxHealth values are of integral type this will basically only return 0 if m_playerHealth < maxHealth and 1 otherwise.
To fix this you can simply cast one of the values (or both) before doing the division to a floating point value.
healthBarSprite.setScale(static_cast<float>(m_playerHealth) / maxHealth, 1);
This should fix it - beware that of course the floating point values may not be 100% exactly the same as your integer values but for your UI it should totally be fine ;)