Yes, you should be able to compile Jack using your either the supplied compiler or your compiler, and use your VM translator to produce an ASM that will run on the CPUEmulator.
In addition to the .vm files generated by compiling the Jack sources, you also need to copy the n2t/tools/os/*.vm files into the directory before running your VM translator. Otherwise there will be calls to nonexistent functions. The calls will have an @targetFunction but since there is no corresponding (targetFunction) the assembler will assign a RAM address to targetFunction which will result in a jump to an unintended address and most likely a crash.
The other issue that you may run into is that your generated ASM may be larger than 32K. There are several things that you can do to reduce your generated code size. The two biggest VM commands are call and return. Notice that every return generates exactly the same ASM code. Your translator can write this code for the first occurrence of a return command, and for all other returns it just needs to jump to that code. You can do the same sort of thing for call, but it's a bit more complicated than just a jump since you need to pass the return address, number of arguments and target address to the common code.
For more on VM translator optimization check these forum threads:
Generated code sizeI HAVE DONE IT PEOPLE--Mark