To the extent that the first description might be a bit unclear in the sense that they mean that it triggers every 2 hours with 0 AM as a basis, so it triggers at 4 minutes past: 12 AM/PM, 2 AM/PM 4 AM/PM, and so on, and not every 2 hours at 4 minutes past: 1AM/PM, 3 AM/PM, 5 AM/PM and so on.
So as @namraccr already mentions, the behaviour matches the cron statement.
Edit: by the way, I would personally use Time cron "0 4 0/2 ? * *" as I find that more intuitive to read that it starts at an even hour (or with 0 as the base)