There are two main reasons for the finish flaking off. The first reason would be a problem with how the metal was prepared and cleaned. The more likely (and very common) application error is that the object has been left in the solution for too long. The object should be removed from the solution as soon as the desired color is achieved and washed off well with water. If the metal stays in the solution for longer than that, the finish will just build up on top of itself, have nowhere to go, and easily flake off.