Thanks for the replies. This simple approach would not work for the widget in question. You'd need to access something like "disabledbackground" or similar, but the widget doesn't expose this.
I had considered using the combo box out of BWidgets as that seems a lot more flexible, and doesn't sacrifice functionality for fitting in with themes. However on reflection I did not like the drop down list style at all, so in the end I've ditched the requirement for combo boxes in this context to be instantiated as read only, and have kept only two states: normal and disabled. This works for me right now as it doesn't matter too much that the user can edit the selected value and potentially make it invalid.