No, this is not always necessary. Since ArcMap uses the typesetting unit Point and not the mapunit for specifying text size, the value for $SIZE will be translated into a corresponding point size. However, if the value for $SIZE equals zero, the text size that you specify in ArcMap will be used.
There are two cases in which you would want to consider calculating the $SIZE equal to zero before converting it:
1. When you want to match an exact point size; in particular, when converting into a feature-linked annotation class where existing annotation should be the exact same size as new annotation.
2. To minimize the database storage (the size is stored along with each feature).