@jaffathecake Out of curiosity, why are you using a button to trigger the select?
A number of semantic issues with custom selects are precisely because of this pattern, most notably that for a select, you generally want a name "pick a fruit" and a value "Apple", so the user can see what the select is for and what is selected without opening the dropdown. Buttons inherently cannot do this because buttons don't have values, so using a select that is appropriately labeled gives you this for free ... but not if you use a button to make the select happen :)
@zersiax values aren't supposed to be human readable. The button needs human readable text relating to it's action and current value. That's what this system provides.