Is there a resource for the current data table that feeds SPELL_ACTIVATION_OVERLAY_SHOW? I'm looking for the table that has the spell id, texture, positions, scale, rgb, etc. The alternative is to try to build it by hand in-game and...I can't say that I relish that task.
From what I see, the event fires with all data passed to the event handler. I guess you could parse through SpellActivationOverlayFrame.overlaysInUse. The keys are the SpellIDs and the values are arrays of active overlay frames. Looks like only the position and SpellID are stored. I guess you could pull the image path and RGB values from the texture. The scale would be tricky, trying to calculate from the size of the image with the hard-coded constants used based on position.
It may just be better to write your own caching method.