It depends on the body of the water. If you happen to have a still lake, where only the top blocks are "water source" blocks, then your system will work fine - placing any kind of block into the same spot as these source blocks, will result in no water in the end. The problems start when you want to remove water in .. bigger dimensions. As most minecraft players know, two source blocks with a block of air in between will form a third source block (infinite water source, anyone^^) - this usually only happens on the surface of water - but the same principle is applied below surface. Especially when you have very (bedrock) deep water bodies, mixed with holes, mineshafts, caves, rivers and whatnot, you most probably will not get rid of all the water, because of those newly created sourceblocks. And then it can get quite tedious to create dirt-tower after dirt-tower in order to stack up to 47 levels from bedrock, just to remove a single source block.