Hi, I remember I lost a week investigating what can be worst but code was ok, I raised stack to huge but nothing was changing, I inspected stack deep and all appeared good to me ...
At last I discovered stack on project was set in two point, the only one was cahnging stack was the project property and this is set by default to some small 512 bytes. Where you defined stack size on file or property?