How can I use the Image<Handle> with Viewer?

I want to create a simple image viewer. I also want the image to be properly interpolated, when zoomed in/out, so I want to control the filter_method, so I decided to create an image and then pass it to the viewer. However, this code doesn’t compile, since Viewer<Image<Handle>> can’t be one of containers parameters.
I can create viewer, using the Image::Handle and it works, but I can’t control images properties this way.

    fn view(&self) -> Element<Message> {
        let path = "1.jpg";
        let image = Image::<image::Handle>::new(path)
            .filter_method(image::FilterMethod::Linear)
            .content_fit(iced::ContentFit::None);
        // let viewer = image::viewer(image::Handle::from_path(path))
        let viewer = image::viewer(image)
            .scale_step(0.01)
            .width(Length::Fill)
            .height(Length::Fill);

        container(viewer)
            .width(Length::Fill)
            .height(Length::Fill)
            .center_x()
            .center_y()
            .into()
    }