Yeah but you can't choose when to complete a block can you? In my understanding, (I'm only looking into these things since today so forgive me if i'm being stupid) you could indeed vary nTime but therefore you would have to have solved the hash already, then send it in when the difficulty would change so that the next block would create an anomaly. To do so you would need immense hash power to beat not only everyone who tries to solve the block, but also beat the exact time you need for the next block to be an anomaly too.
nTime IS when you completed the block. So yes, you definitely can choose. and nTime is part of calculating the hash. No need to actually submit a block at a specific time, just vary nTime as needed.
Please PM me this code so I can determine if I need to make a fix.
The code is in your own client - just call getBlockValue ?