I have a Sharepoint list, for which have created a custom form in Power Apps.
All the data cards have their DataCardXXKey element's text set to Parent.DisplayName, which should mean that it would show the name of the corresponding Sharepoint list column. And while some of those update themselves after I refresh the Data, many times they do not and they retain their old names even if the new one is already visible in some UI elements.
I'm able to force a refresh by deleting and adding a field, or changing it from Edit to View and back to Edit, but this is in no way a sustainable thing to do.
Changing column names in SharePoint is problematic because SharePoint retains the first name of the column and PowerApps sometimes uses the original column name. Generally, it is not a good idea to rename SharePoint columns once the list is created, in particular renaming the Title column causes problems. My suggestion is to unlock the card and replace Parent.DisplayName, with text enclosed in double quotes. FYI, the only values in a form's card that matter are the Default property of the control in the card and the Update property of the card itself.
Unfortunately this is not a suggestion I can use as I need the data card labels to change dynamically. Which they do, for the most part, until some of them don't. And PowerApps sees the new names, and shows them in the UI (my attached screenshots), but doesn't update the labels. This is clearly a bug, as the behavior is not consistent as it sometimes work, and you can force it to work manually by toggling the fields default mode from EDIT to VIEW and EDIT again. I also don't think that it will cause problems, as PowerApps remembering the first name only keeps the connection valid and SP also doesn't change the system name of the column after the first one.