We found the Rename method problematic as well, and in the next service release it will be changed as
int Rename(LPCSTR lpcszNewName, BOOL bAskIfAlreadyUsed = FALSE);
Return:
1 = given name is used to rename the page successfully,
0 = another name was used to rename the page, either through user input or through internal enumeration.
-1 = user click Cancel when ask for a different name to rename the page when bAskIfAlreadyUsed is set to TRUE.
But in the meantime, maybe you can avoid a rename? If you need to access this later, you can always save the name by GetName(). Origin windows, (pages) must all have unique names, so you may want to use Label for indicating your window with more specific information.
CP