Well, because no one has implemented it this way. Or, more precisely, because return
is not an expression.
throw
used to be a statement only prior to C# 7.0, but then was extended (due to a proposal) to be an expression as well (only expressions are supported in the null coalescing operator).
So unless no one suggests to make return
an expression, it won't work.