Is this not considered good practice?
No it isn't. The reason is that any computer that gets your library installed on it now has two copies of LiquidCrytal.h and LiquidCrystal.cpp.
While this may not seem like a big deal, what happens if the LiquidCrystal library gets updated? Now, the two copies are not the same. A sketch that uses LiquidCrystal (why couldn't that have been called LQ? Much easier to type) and needs the new behavior will work, until the owner tries using your library.
Consider, too, what happens if someone wants to derive from your library. Now, there need to be 3 copies of LiquidCrystal on the computer.
Soon, it becomes a nightmare to try to keep all the copies of LiquidCrystal up-to-date.
In my opinion, it is better to be up front about that fact that your library depends on LiquidCrystal.