Haiku and BeOS are not microkernels, they are hybrid kernels. Some components have been moved to userspace, but the drivers still reside inside the kernel to minimise latency.
Haiku does in fact use GCC2, but it also has the capability of being compiled with GCC4 (4.7.3 as of the latest nightly release). The reason for this is BeOS compatibility, most applications won't work on a GCC4 version of Haiku. It's still provided for development purposes and as a way of checking if current Haiku programs will be compatible with future releases of the OS that are compiled with GCC4.
Haiku has also recently gotten a x86_64 release thanks to last years GSoC project, and the default compiler for that is GCC4 as BeOS applications would be incompatible with a 64bit version of Haiku.
All of the other points you've made are more or less correct, and interesting especially in regards to FreeDOS.