I think my point was that, as long as the URL is correct and as long as no other code intervenes, WP should do what you want automatically. It doesn't matter whether the code is in a custom menu, a link on a page or anywhere else. If the URL is correct, then the correct category list should appear without any coding on your part.
I don't recall suggesting that you should use, or need, a custom menu in a sidebar. All you need AFAIK is for your URLs to be correct: and they seem to be to me.
If, however, you add any code like this:
<?php query_posts('category_name=news'); ?>
... then you'll just get the posts in the 'news' category if the template containing that line is used.
The URLs from your menu look correct to me, as I say, so I'm trying to work out why they aren't displaying the right list. The choices are between the following, as far as I can see:
- You have some custom code that is overriding the default behaviour
- Your theme does something strange with the loop that means the default behaviour is not working
So, I'm not sure what custom code you have in your templates, or what strategy your theme uses for making sure the correct template is used, but I think my starting point would be to get rid of any custom code that tries to list a category and then work out from the source files how your theme decides what template to call. Once you know what template is being called, you can examine the code to see why the correct category list is not being displayed, if that's still the case once all custom code has been removed.
My apologies if I've misunderstood either what you are saying or what you are trying to achieve.