With SQLServer, it seems to be generally accepted that adding a SELECT SCOPE_IDENTITY() to the end of your insert is the best way to return the PK of the newly-inserted reco
The RETURNING clause is intended for just this kind of usage, so I would call it a best practice to use it.
An alternative would be to select seq.CURRVAL after the insert. That returns the last value obtained from the sequence by this session.