It's important to remember that evolution doesn't happen on an individual level, it happens across a population over many generations. In an individual variation occurs, but it's the accumulated changes over time that leads to what we call evolution. It's important to recognise that population doesn't mean entire species, indeed if species changed in their entirety then we would not see any divergence in life. There would just be one form that has continually changed throughout history. Instead there has to be a mechanism for divergence.
Evolution is descent with heritable modification, no child is simply a hybrid of their parents - copying errors do occur. Most of these are neutral to the fitness of the organism, there is the occasional harmful mutation and there is on the very rare occasion an advantageous mutation. Now these mutations can only get passed from generation to generation, so over successive generations the advantageous mutations should get passed through an entire population. Along with many more neutral mutations than advantageous.
Consider a situation where there are two different populations of an animal. Through geographic isolation, the populations can only pass down heritable mutations in their own population so the gene pools will never mix. With the right mutations the populations will be unable to reproduce together and are now considered two separate species. Now because those populations can no longer share mutations, each population will have their own future evolutionary path. In a changing environment over a long enough time, the mutations could make one of the populations look drastically different to the other.
It's important to remember that evolution works in on a long time scale, that we are observing just one snapshot in time. The fossil record gives us a glimpse at the past, and both our morphology and genetic codes show divergence between the species. That we can see any evolution at all even in the small time frame we've known about the process is astounding. Speciation has been observed, and alongside mutation, selection and genetic drift, the mechanisms that permit the diversity of life on this planet are understood.
The tree of life
Darwin's theory of evolution postulates that all live diverged from either a single or a few branches of life. So that would mean that at one time or another, we would all have shared a common ancestor. Just as all members of the feline family share a common ancestor, going further back on the tree would show a common ancestor with dogs. There would also be a common ancestor with apes somewhere along the line, going even further back there would be reptiles, birds, amphibians, fish and indeed all life.
Consider the statement: "A cat will always give birth to a cat." I happen to agree with that statement, a cat will never give birth to anything but a cat. So when there's a speciation event, now there are two different species of cat both giving birth to their own version of cat. Hypothetically fast forward this millions of years where one of these cat populations has become bipedal and has their front paws more suited to grabbing onto objects. Now would this still be a cat? Yes it would. But our classification of cats is based on the end node we see on the tree of life.
Consider this hierarchy
5)A B C D E F G H I
This is a hierarchy like the tree of life, and as observers we would be seeing one snapshot in time. Say life as we know it now is the top line (rung 5). We'll label cats as I and dogs as G(5) just for arguments sake. So the path to cats was ABEEI while the path to dogs was ABEDG. So if we look back say 50 million years or so, we may be looking at the third rung on the ladder and evolution would predict that cats and dogs were once species E(3). Now species E(3) speciated into two new species, species D(4) and E(4). So this would mean that species D(4) and E(4) are still classified as descendants of species E(3). So species F(5), G(5), H(5) and I(5) are also still descendants of E(3). If we took E(3) to be a cat, then D(4) and E(4) would still be cats. F(5), G(5), H(5) and I(5)5 would still be cats. But F(5) couldn't mate with G(5), H(5) or I(5) so it would be a separate species.
What's important to note is the hierarchical structure in the relationships. If E(3) is the common ancestor of all felines, then all creatures born on from that original species will still be felines. But the nodes prior to E(3) would not be felines. B(2) and A(1) would be the creatures that in one form morphed into felines over successive generations. All B(2)'s are A(1)'s, but not all A(1)'s are B(2)'s. Some A(1)'s are A(2)'s after all. Now dogs may be on the other side of the tree, a dog could be B(3), meaning its evolutionary path would be AAB, where a cat's would be ABE. So what does this mean?
It means that a cat is not a dog, that while they have a common ancestor they both have taken very different paths. Dogs will only give birth to dogs, while cats will only give birth to cats. The dog code is AAB so all it's descendants will branch from the AAB node. The cat code is ABE so all descendants of cats will branch from the ABE node. You will never get a node off AAB that could equal one off ABE. Species cannot go across the nodes, they can only go down.
Making sense of the incomprehensible
That node example was unnecessary complicated, it's a failure on my part to explain how common ancestry works. Dogs descended from a single pack of wolves around 100,000 years ago, dogs are a domesticated subspecies of wolf. A dog was not always a dog, but any descendants it has will still be dogs. Where we draw the line on species is dependant on the point we are viewing the snapshot of time. If we could travel back in time and see the earth 65 million years ago, we would see our furry scavenger ancestors that wouldn't resemble our current form at all. We'd also see many species that are long extinct, each one having their own little ecological niche and each one being wonderfully unique. In that snapshot of the past would like the ancestors of all life today, though only some would take the form we currently know them as.
So to the original question, can a cat turn into a dog? No, it's an absurd proposition. But can a cat morph into another form given enough time and advantageous mutations? Yes, that's what the theory of evolution proposes. Species change over successive generations, it all depends on their current form and their suitability for the climate they are in. A dog will never give birth to a cat, but millions of years ago one species that's most likely extinct gave birth to two offspring. One of those offspring is the ancestor to all manner of wolves, bears, weasels and seals. While the other offspring is the ancestor to all manner of cats, hyenas, meercats and mongooses. If we could have seen that common ancestor to all those families when it was alive, we would see now that it could only give birth to offspring of it's own species. If we called that species Carnivoria, each dog or cat or meercat would still be a Carnovoria. Over time and with speciation, the variation of those offspring would be staggering. It's only our frame of reference that limits us from knowing this ancestor to so many mammals as anything more than a necessity on the tree of life.