Different name spaces are used for on page profile parameters and script profile parameters. On page profile parameters uses profile. and script uses user., so you will need to update your code to say return user.get('product');}
Thanks for sharing this update! Would you be able to share more details (screenshots, etc.) with me directly at email@example.com? Alternatively, you can send the same information to client care at firstname.lastname@example.org to open a support ticket so that we can explore the matter further? Thanks!