Assuming that Label.SingleLine is False then the text will be wrapped if it is too long. Canvas.MeasureStringWidth will return the string length without the text being wrapped.
StringUtils.MeasureMultilineTextHeight will return the correct height with the wrapped text.