but we could get rid of the default image info.
That was my first thought as well, but we need to store an image info struct somewhere. VkWriteDescriptorSet takes a pointer to a VkDescriptorImageInfo, and that struct instance needs to live somewhere. Right now it either lives in the view or texture.
Yes, this can be handled e.g. by putting an extra dynamic array in wined3d_context_vk or modifying wined3d_shader_descriptor_writes_vk, but neither of those struck me as particularly beautiful.