It is a bug, but it's a bug in your code.
Right before showPopover = true you need to have showSheet = false.
And right before showSheet = true you need showPopover = false.
These two additions will revert the status of the other item so they aren't shown anymore.
You received that "Attempt to present" error because you already had something presented, and were trying to present a second view over the top, which you can't do.
Topic:
UI Frameworks
SubTopic:
SwiftUI
Tags: