I can't set a hand made static page as my blog front page so I can show what is new. There are always conflicts with "the more" or with index.php.
Options->Reading->Front page displays: A static page. You need to create two "Pages", one for the static page, and one with a normal Loop for your main blog entries page. You may need to make special Page Templates for these. Then you set which Pages are which here. Okay, so it's not obvious, but it works fine.
I can't insert a forum with the same logins, headers, sidebar and whatever needed as the blog. Tried bbpress but it requires hackering that I can't deal with, plus it has not all the features that a forum should have (phpbb, vBulletin).
bbPress is the only forum software capable of this, as far as I know. However, your criticism should be directed at the forum softwares, not at WordPress. If they want to integrate, they're free to do so.
As far as bbPress's features go, complain on the bbPress forums. Not here.
I'm always making questions in the wordpress.org forum that are unanswered or keep unsolved. Many times I'm refered to codex entries that I have already read and plugins that I have already tried because I did my search before asking.
Perhaps your questions are unclear? I have no answer for this except to say that if this sort of thing happens to you often, then maybe you should examine how your questions are worded instead of placing blame on everybody else?
I wish I could incorporate plugins code to my themes.
You can. Add them to the theme's functions.php file. That file is loaded after plugins are, but it can use all the same bits as plugins can. Mostly. Anything you can do with a plugin you can probably do in functions.php. Just make sure that it does not produce any output by default... Should be all hooks and filters and functions and such.
And last but not least, after making a lot of modification, upgrading is a pain or almost impossible because you have to remake the whole site.
Generally it's pretty straightforward, if you don't modify any core code. There are really very few reasons that you would actually need to modify core code. Every once in a while there's something, but in that case you should also put in some kind of ticket or patch so that it can be done without the modification.. Like using a filter or something. This is how things like this get added... somebody has a need, puts in a ticket, it gets done or decided not to be done, depending. Without a problem ticket in trac, nothing changes.