I may be wrong, but my understanding is that custom control systems are used generally when you have physical restraints of some sort (limited memory, computational power) or require the speed.
I'd imagine for the purposes of SpaceX though, they don't have those restrictions and so they make huge gains by using an extremely well known "off-the-shelf" OS where they can easily source programmers. The fact that the OS is (relatively) well understood would also possibly mean it's easier to test.
All of which means that for minimal trade-off in reliability, they make large gains in development time and cost.
I'd imagine for the purposes of SpaceX though, they don't have those restrictions and so they make huge gains by using an extremely well known "off-the-shelf" OS where they can easily source programmers. The fact that the OS is (relatively) well understood would also possibly mean it's easier to test.
All of which means that for minimal trade-off in reliability, they make large gains in development time and cost.