Create any macro with:
/stopcasting
/cast {spell}
Now start casting any spell with a cast time then try to immediately use your macro within the first 1 second of that cast. The first spell will cancel but the macro’d spell will not cast … unless you quickly press it twice, and is apparently the only way to stop casting and cast something else within 1 second. The macro will work after 1 second but not before.
It seems some form of GCD is mistakenly applying to the start of a cast. This is not supposed to happen for any spell with a cast time. Spells with cast times are supposed to be able to be overwritten at any time because no action is taken until the cast ends.