Unfortunately there are a good number of things that the GUI just can't handle correctly when it comes to VM XML editing, so you end up stuck in raw XML mode for advanced stuff. All the little nitpicks I'm aware of have been pointed out and listed as bugs, but they seem to have fallen by the wayside.
One glaring example is boot order. I've never been able to get the GUI to produce the results I need to change the boot order, I always end up manually swapping the 0 and 1 for boot sequence and then editing it back when I'm done.
Be aware, if you make edits in XML mode, they will get blown away if you save a setting in GUI mode. Always been that way, the rationale is that everything you normally need to edit should be handled by the GUI, and if you are advanced enough to edit the raw XML then you should just stick to that mode.
I don't like it, complained about it, didn't get anywhere because a solution that keeps custom XML while manipulating the parts specified in the GUI is too hard to code properly.
The solution for now is to either keep your VM's simple enough that you don't need the raw XML view, or learn how to parse VM XML to produce working results without involving the GUI.