Now I found a solution myself, playing around with the FlowLayoutPanel.
The AutoScroll must set to false while changing the WrapContents:
this.AutoScroll = false;
this.WrapContents = this.Width >= this.Controls[0].Width * 2;
this.AutoScroll = true;
Then the correct scroll bars will be displayed.
The behavior is not documented anywhere. Very mysterious.