I have been having a similar issue and I have submitted a bug report to the Stencyl team just now.
Having said that, I am pretty certain your math is not correct in the actor behavior drawing (when drawing from an actor behavior, the default is actor space, so [camera X] - [X of Self] would produce strange results. Imagine your Camera X is 1000 and your X of Self = 300 (in screen coordinates, since this is a HUD actor). The result would be that the text is drawn 700 pixels away from the 0,0 of your actor.) Have you tried using the "switch to actor space" block (to be certain of your origin) and using 0, 0 as the coordinates for drawing? (This would result (in theory) in the text being draw in the upper left corner of your actor's image).
As I said, I've submitted a bug report, because I also have been wrestling with this lately and have found no way to get drawing text from an actor behavior to work properly, and as you said - it works from a scene behavior (but it draws behind any HUD actor.)
EDIT: Just to be clear, this only seems to be a problem for HUD actors.