What is your site URL? I had the same problem with a WordPress site I was working on - http://www.masshistory.com. If you look on the front page, there are all types of different buttons to different pages, and like you, each one had to display blog posts only for that page/category.
This is how I did it, hopefully it helps you:
Create a page with the same name as your category.
Make sure each post is assigned to the correct category.
Install the plugin Pages Posts by Rich Gubby
Once installed, go to Pages Posts under Settings and do this:
1. Select the page name of the new page you just created
2. Type: Category
3. Category: Now select the category that matches the name of your new page.
4. Choose display excerpt or full post (whatever you want)
5. Show original page text before posts: choose yes or no. Yes will allow you to type in page text above where the posts start appearing. Select no if you don't want to do that.
6. Put number of posts you want to display per page. The default is 10, but you can change the number.
7. Show as though a home page: Select No
8. Click the Add Page button
Now repeat this for each category where you want only those posts assigned to appear.
Let me know how it works out!