Yea, the good news is padding itself isn't very difficult to do. PKCS7 is just append N bytes with the value of N so that the last block of the data is the proper size. If the data is already the proper size then you add an entire extra block of just padding. It's not a landmine like the crypto itself is.