I guess I would start by using Firefox's Firebug to drill down the css settings and make certain they are getting applied correctly. Then from there, if they are applied correctly, I'd go back to the width issue. Have you tried a setting wider than 160px? If you try 170, does it actually make the menu wider? It's still possible to have a menu item wider than 160 that will stretch things out? Also, there is no width setting in your settings for .last, but that shouldn't matter since the image in your post is a .first item and the width is set there.
I downloaded a copy of the source from codeplex quite some time ago, and "as is" it was in need of major modifications because it did not display properly in IE7 or IE8 at all. I think I even had issues with Firefox. The main thing was that is was adding all kinds of extra space between submenu items, the root menu had display issues with the "icon" only thing, etc. And that was without editing a thing at all, just using the defaults in the skin.
With DNN 5x and DNN Nav, I use very different css that works out better, at least for me. Anyway, the freebie is a great example and a great starting point for developing your own style of coding the menu css. You probably just need to tweak things a bit to get them working properly and it may be more a matter of trial and error and making certain what you end up with is cross-browser friendly. I haven't created a menu with rounded corners, so I don't have a working example to give you. I can tell you, though, that I set submenu width to 150px via the ".mainMenu .m" class setting such as you did and it works fine for keeping a minimum width on the submenu without having to add a width setting anywhere else in the submenu css. Honestly, 160px should be plenty for the content you have. Again, it may just be a matter of some minor tweak that will fix it.
Actually, I just looked at one of my dnn nav menus and I see that the "first" "last" and "firstlast" class is applied to the tr, so perhaps instead of setting the width to 160px at ".mainMenu .m .first", try setting it in ".mainMenu .first span.txt" or something with the ".txt" in it, and then perhaps even set a width for the icon at ".mainMenu .first .icn" to make sure the icon's area doesn't end up too wide.
If that doesn't work, keep tweaking with various versions/combos of the classes until it works for you. I suspect you'll end up with something very different from the original, or at least behaves better in naughty browsers like IE.