Based the HTML living spec at https://html.spec.whatwg.org/multipage/form-elements.html#attr-option-selected:
The selectedness of an option element is a boolean state, initially false. Except where otherwise specified, when the element is created, its selectedness must be set to true if the element has a selected attribute. Whenever an option element's selected attribute is added, if its dirtiness is false, its selectedness must be set to true. Whenever an optionelement's selected attribute is removed, if its dirtiness is false, its selectedness must be set to false.
Thus, even if the selected attribute is set to an empty string, it's mere existence on an <option> element signals to the user agent that the <option> is selected.