Your code worked for me on Mac OS with Chrome/Safari browsers and the built in Mac mail client (called "Mail").
This might depend on various things: OS, browser, Flash Player version, mail application
I would recommend trying some different combinations of the above. You might also want to specify which OS, browser, Flash Player, and mail client you're using.
Finally, you may want to try using the URLVariables class, instead of putting the subject/body in the query string:
var emStr:String="mailto:a@b.com";
var variables:URLVaraibles = new URLVariables();
variables.subject = "This is the subject!";
variables.body = "This is the body.";
var email:URLRequest= new URLRequest(emStr);
email.data = variables;
navigateToURL(email);