I don't know of a direct way to achieve what you are trying to do. The only thing I can think of is to query master.dbo.sysmessages with the messageid and the variable that representing the language to get the message string, and then present it. For example:
declare @msgstring varchar(255);
select @msgstring = [description] from sysmessages
where 120063 = 5001 and msglangid = 1044
raiserror(@msgstring,16,1);If you have parameter tokens in the message, then you will need to do more work to do C-like substitution of positional parameters.