You should not write your code in a way that forces two layoutchains, as this will always end in being slow. Before adding something to the rootpanel, first build it completly. The good thing is that GXT alraedy caches multiple layout chains.
However a NorthSouthContainer always requires the center region, please see the edited post.
I updated the code to update atleast the width if no center region is specified, this change is in SVN now. However the south part will always be displayed under the center region. If there is no, than its under the north region. If that is also missing than its the top part.