Calendar events implement PhabricatorPolicyInterface, but do it in a trivial way. Particularly, it isn't possible to create a private event.
Calendar should support standard view, edit, and join policies.
(We may eventually need to do something around letting other users see that you're busy in a block, but not see what you're busy with, but that can come later. For now, just implement standard policy support.)