Here's how it works:
1) The module asks USPS to reply with all available rates for a given weight and source/dest zip.
2) USPS server replies with all available rates
3) The module displays only those rates that were returned AND match up with the list of checked services in the administration
So, even though you've checked a certain service in the administration back end, that does not guarantee that a rate will be returned.
However, looking at your XML, a "medium" box is listed in the same service as "regular":
<MailService>Priority Mail Regular/Medium Flat-Rate Boxes</MailService><Rate>10.35</Rate>
I'm not up to speed on any changes in verbage on USPS's end, but it appears that they are one and the same. Perhaps change the USPS_SHIP8_TEXT line in uspsv5.cfg.php and uspsv5.php to reflect this fact?
As for the 8 ounces/50 lbs thing, that is on my TODO list of fixes. For now leave all sub-pound items at 1lb.
edit: I see you're updating your post =)
I'll look at this again tomorrow.
edit2: Yes, I'm quite sure that there has at some point been another change in verbage. The USPS modules use a textual comparison of the MailService names rather than a numeric comparison of the CLASSID to determine if the returned rate matches one of your selected rates. So, anytime USPS changes the MailService text, the module will not recognize it. This was the original behavior I built upon.
Therefore, change the necessary text in the config file as well as in the main file's write_configuration() function to reflect this change. I'll update my module and post the update soon.
If anyone would like to underwrite changing the way USPS determines returned results please contact me.