Nevado JMS is not 100% compliant, but it's close. Nevado creates a lot of JMS functionality itself, and hides the limitations of SQS where possible. It was developed against version 1.1 of the specification, and we hope to update it to 2.0 when that becomes final in 2013.
SQS guarantees at-least-once delivery, whereas JMS requires once-and-only-once delivery. In practice, duplicate messages are very rare. You can send millions of messages and never see a duplicate, but they are still a possibility and your code needs to be able to handle them. If this is a big issue for you, let us know. This could be prevented with some additional magic in Nevado, but it's an edge case and hard to reliably recreate for testing, so it's not covered it yet.