I believe the issue here stems from the fact that the DataBinder.Eval(...) expression will only be evaluated when .DataBind() is called on the RadComboBoxItem in the code-behind. If you take a look at the generated HTML that comes out from this expression you will see that it is just plain text. This gets generated when you call .DataBind() on each RadComboBoxItem, like in
this documentation article, or when you data bind the RadComboBox.
In your case if you were to take a look at the RadComboBox variable in FireBug you will see that you do indeed have RadComboBox items with these attributes in there. However, only set_text() will go in and modify the HTML to actually display something in the element representing the RadComboBoxItem.
In the case of your custom attributes I believe, if you want to keep all of this client-side, that you will have to manually update the <td> elements using jQuery. Good news is that the RadComboBox renders as as <ul> element with each item being an <li>, which allows for a $.each function to do most of the heavy lifting.