Many of the solutions I've built send out emails with links to have users update and they work as excepted.
When sending an email to the user, to edit an existing item, you have to "tell" the app the ID of the item.
Here are the settings I add to the Power App to open it either in New mode, or Edit mode.
Power App - OnStart -
If(!IsBlank(Param("ID")),Set(ListItemID,Param("ID"));)
DefaultMode for Form -
If( IsBlank( ListItemID), FormMode.New, FormMode.Edit )
Form - Item
If(IsBlank( ListItemID ), Defaults( <<DataSourceName>> ), LookUp( <<DataSourceName>>, ID = Value ( ListItemID )))
Where you remove the <<DataSourceName>> and add your DataSource.
Now, when you use the variable for your email, the ID is being passed, so ListItemID is not blank, so the App switches to Edit view and brings the data back from SharePoint.