If I add an item to the cache named "foo" and then add another item named "foo" to the cache before the first expiration, will this trigger a CacheItemRemoved event?
No, it just overwrites the element. A disabled callback is not called.