I've fixed the problem, and it didn't have to do with XML::Smart.
After running your code and it working for the entire output of qstat, I investigated further as to why. LibXML requires the user to have the XML in a file before it can parse it, so I switched the $qstat variable in my original example to reading the output from a file. Once I did that, XML::Smart worked perfectly.
Thanks for the code, though; I may have to switch to LibXML! It does get a bit messy compared to XML::Smart, though.