See this thread if you need an example script of this.
Basically if you give Link a ring that changes his sprite CSet, you have to Quit->Continue in order for the changes to take effect...But then it stays that way untill you quit again.
..maybe entrance/exit would change them too...untested.
EDIT: I realized a potential fix might be checking the subscreen every friggin frame. If that's the only way about this, perhaps I lied and mark as not a bug. Is there a way to cause a change in sprite pallete for link by script? Id say that would be the easiest fix. Or is currently loading colors not really implemented like that?
EDIT2: well now that I think about it, boss colors are loaded whenever you create an enemy with a script.