This makes indeed no sense. You need to make sure that the model matches the view without any need for additional business logic.
Just use
<p:selectOneRadio value="#{product.priceId}">
and give the default item a value of null
instead of ""
so that it matches.