Texture ref is gone after PrefabStage change

So, I have a simple static class which handles preview image generation and caching of the generated textures. Input key is an asset (prefab) from which I generate a preview texture for a custom browser. I’m using
PreviewRenderUtility and all seems to work fine. Texture gets generated and I copy it like this:

            previewRenderUtility.camera.Render();
            var previewTexture = previewRenderUtility.EndStaticPreview();
            imageCacheEntry.Texture = new Texture2D(previewTexture.width, previewTexture.height, previewTexture.format, false);
            Graphics.CopyTexture(previewTexture, imageCacheEntry.Texture);
            imageCacheEntry.PrefabFileTimeStamp = File.GetLastWriteTime(prefabPath);

these cache entries are:

    [Serializable]
    public class PrefabPreviewImageCacheEntry {

        private string path;

        private Texture2D texture;

        private DateTime prefabFileTimeStamp;
}

which are tracked by a dictionary (key → cached entry). All is good until PrefabStage change happens. After that, all texture refs become null. Dictionary entries are ok, but their texture fields become null.

Any ideas why this is happening?

no ideas?