Nice engine, but you're wasting a lot of events (wasting CPU power) by making it custom
This is a classic case of armchair optimisation. You can't say statements like this without measured FPS differences between comparison .caps. I'd put money that there's no detectable difference, due to the parallel working between the CPU and GPU (the CPU will spend lots of time simply twiddling its thumbs waiting for the GPU, which does the serious work with rendering, to finish). So I say if it works for you and doesn't dent your FPS, go for it.
Don't feel bad though - it's common for supposedly experienced low-level programmers to make incorrect statements about optimisation - given the mind boggling complexity of modern CPU caches, pipelining and branch prediction, its virtually impossible to look at two bits of code and say for certain one is faster than the other.
If optimisation crosses your mind, the key is measure, measure, measure. Otherwise you don't know.
(in this case it's unlikely the built in behavior would ever be slower, that's not the point, if it's not measurable it's irrelevant)
The main advantage of the platform behavior is its perfect
Brave words from a man who's behavior accounts for over 5% of the total bugs submitted to Construct, ever!