Edwin,
I would avoid the use of a constraint altogether for your finish milestone as the schedule is there to provide a forecast of likely project completion. Adding a constraint will not allow the reported end date to reflect the current forecast. If the end date is constrained with a hard (finish on / mandatory finish), any reported date will reflect the contractual date however, negative float will wrap around this forecast date and will provide an over run duration.
Another way of showing both the current forecast of course is to base line the project with the contractual dates. Allowing free movement of the schedule will provide the current forecast and including a 'variance against project baseline' column in your report will show the build up of negative float.
I would limit the use of hard constraints for life critical events such as power circuit outages, line posessions or degassing station / oil line shut down. I tend to only use soft constraints (start / finish on or after, start / finish on or before, as late as possible) sparingly in my schedules and only where it is difficult to hold the activity in place with existing retaining logic. Finish on or before could be used to highlight a the finish date of a future event and will allow the activity to move and will only become critical when the constrained date is breeched.
Hope this helps.
Simon