Передавать в исключении дополнительные данные?
Если Вы будете использовать такой CustomException исключительно внутри своего приложения, и у вашего приложения нет публичного API, через которое может пробрасываться такое исключение, то не вижу ничего страшного в использовании CustomException.
Такого лучше избегать