@Trevor,
I found the issue on this after more digging.
Somehow when you touch the key using the CacheHelper.TouchKey("KeyName") if there are multiple dependencies, the Priority Status of the CacheItem changes to NotRemovable. the Data has "{DummyItem}" value.
It throws an Invalid Cast Exception because of this. I was able to resolve this by using the CacheHelper.ClearCache("KeyName", [caseSensitive = false], [logTask = true]) This will clear the cache item that starts with the KeyName you specified and logTask = true to create a webfarm task to be able to sync to the webfarm.
Not sure if this is the right way to do it, but in the meantime it works for me as I am trying to find a better way to do it.