VkCreateInstance ignores VkInstanceCreateInfo::ppEnabledExtensionNames

Hello.

I have a problem. I would like to use vulkan to render content on an offscreen vk image, and then copy the pixels from it, and put the content on a XWindow. However I am using a remote X desktop environment. When I create the VkInstance without VK_KHR_surface and VK_KHR_xlib_surface extensions, driver will still try to initialize swap chain related stuff, and then vkEnumeratePhysicalDevices() will fail. So I have to unset env DISPLAY when calling VkCreateInstance() to make it work. But it will cause other issue in my application. Is there any better way to workaround the issue? Thanks.