I'd put it in `Castle.Core.Internal` namespace, for sure, but perhaps a separate class... `ExceptionMessageBuilder` or similar would be a better place to put it.
There are a few other places where the exception message constructing code is fairly complicated so those might end up migrated to that helper service as well.