I'm sorry for the delay. We have tried your project on the hardware and we have reproduced the behavior. After an analysis, we have found what couses the problem.
Your project doesn't use a right write method which is configured by the "Write method" property of the IntFlash bean. Your project has set just "Write" method, which expects that the memory is erased. This doesn't work in most cases when the flash is pre-initialized by some constants. In such case, it's necessary to use "SAFE WRITE" method, which erases the content and keeps surrounding data within the sector (sector is 256 words on the 56F8323).
Note: Please note that with SAFE WRITE the bean saves the content into RAM before erasing the sector and writes data back afterwards. However, it's not guaranteed that the whole sector will not be lost for example due to power loss after erasing. So if the user does have some imporant constants in data flash, he should back-up them somehow (like storing them twice in different sectors and checking their integrity.)
Here is a "Write method" property description from IntFlash bean help :
The Write method - Method for writing into FLASH memory.
Possible choices: WRITE - write only value into FLASH without any tests. Only erased bits can be changed. For a reverse change a different method using erasing FLASH must be used.
DESTRUCTIVE WRITE - actual sector is erased if necessary (without any data backup) and after that data is written into the FLASH.
SAFE WRITE - if the requested FLASH area is not empty (erased) affected FLASH sectors are saved to data RAM and the FLASH is erased, after that the previously saved data, except wanted position, are written back into the FLASH.