The OCL is working ok, but on the cgminer fork I think you are getting off the beaten path a bit. Can't load your example batch and create a conf file out of it that works, either that or something is leaky and staying in card after program terminates or it is simply just leaving the card in a bad state. The .conf file is a great feature to tweak settings specific to the cards branding as they all act a bit different across the 280x chipset to my experience and temp-cutoff doesn't always work so those features not being present is kind of a deal breaker for me.
I've got a couple XFX R9 280X DD's in this machine and;
Original kernel was ~147.xKH/S
New kernel is ~154.xKH/S
I'll look into fixing it in cgminer-khc. But, we might have to wait till I get a working version of sgminer-khc since, it is a lot easier for me to debug this one.