The documentation for radiobutton and checkbutton has, for quite some time, included a paragraph to this effect:
Command-Line Name:-selectcolor
Database Name: selectColor
Database Class: Background
Specifies a background color to use when the button is
selected. If indicatorOn is true then the color applies to
the indicator. Under Windows, this color is used as the
background for the indicator regardless of the select state.
If indicatorOn is false, this color is used as the back-
ground for the entire widget, in place of background or
activeBackground, whenever the widget is selected. If
specified as an empty string then no special color is used
for displaying when the widget is selected.
That isn't exactly what Tk is doing, as of Tk 8.5 I think.
What happens on Solaris is now the same thing as happens on Windows - the background is used regardless of the select state.
The original behavior - using the color only when the item is selected - is really the preferred behavior.
Of course, an enhancement to provide a -deselectcolor and a -tristatecolor setting would probably be even better.
I notice that https://sourceforge.net/tracker/index.php?func=detail&aid=1083838&group_id=12997&atid=112997 , which was quite some time ago, is listed as closed and fixed, however the man page change recommended in that ticket doesn't appear to have made it into a release.