Tourist shops will sell you cheap and overpriced stuff. I'd suggest you avoid buying in SJPP and do your purchase in Pamplona (or Biarritz, if you make a connection there), in a cloth shop. Ask hospitalero. Be sure it is "pure lain" (pure wool); the good ones have a leather sweatband in the inside, and a lining. Good products will be between 20-40 euros; it may seem a bit expensive, but it will be with you all your life...you can even inherit it to your children. Just be sure it is safe from moths.
As for actually wearing the basque berets...my impression is that for most city people berets are a thing for festivities and special occasions. It is more usual in villages.
@biarritzdon, here in the forum, should know more about this. But don't worry, wear what you like...I have seen all kind of styles in the Camino, from the smart to the really odd -and nobody cares. Your beret could actually be a good conversation ice-breaker.