Я по поводу "firebird.msg" - а нельзя его сделать просто текстовым файлом в формате что-то вроде: error00000001=arithmetic exception, numeric overflow, or string truncation error00000002=invalid database key ................ или там в XML ?
По моему - и с локализацией проще будет, и поиск сообщения по идетификатору избавит от конфликта версий.

