My biggest reason for wanting to switch away from GPUI is because there is barely any momentum in making it a general purpose framework. Zed team is mostly just focusing on Zed usecase and the end user is left implementing basic functionality themselves.
On top of that you are stuck with their async runtime of choice (smol), while Iced supports both tokio and smol. This is annoying when you have some tokio dependencies, of which there are a lot.
I played around with Iced a bit now. I like it a lot. The only issues that keep me from porting are:
1. I can’t replicate the GPUI popup window with winit. I am currently trying to patch winit to make it possible, but am a bit lost.
2. I do like the tailwind like syntax for styling components in GPUI a lot. It just fits my mental model a lot better than Iced.
That said I think Iced is the cleaner framework of the two and if you are designing a traditional windowed application, I would recommend it in a heartbeat.