Views are disappearing randomly; always needing to flush caches
Thank you so much to kladria on IRC #drupal-support for helping me through this one! 

After using a debugger to step through the code, I saw that my implementation of hook_views_default_views() was not being called. The problem I was having was that the function was in the wrong file. Originally, I had the function "MY_MODULE_views_default_views()" in the file "My_MODULE.views.inc", and it is supposed to go in "My_MODULE.views_default.inc". That "_default" made all the difference for it to be auto-loaded correctly.

So far, there has been no more needing to flush caches, and the views haven't disappeared. I'm pretty sure this did the trick.