"If all you're doing is simpler 2D, this is IMHO going to be _more_ productive than XNA because you don't need to jump through all their stupid hoops regarding the content pipeline, you can keep it super-simple."
If all you're doing is simpler 2D, drag drop PNG/TGA/GIF/BMP etc into the solution. Go:
Texture2D tex = content.Load<Texture2D>("filename");
Woah! Some scary hoops to jump through there!
Also I think that entire diagram can be boiled down to:
Input file -> Processor for that input file -> output file. I REALLY fail to see where the nightmares are.
The content pipeline, if anything is the most dumbed down newbie proof thing ABOUT XNA, IMO.
Incompatibility issues, I'll concede is a big problem, but arguments about productivity or complexity against XNA hold absolutely no water, I'm afraid.
Also, if you fancy nightmares, try working on a PS2.